V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
Hawy
V2EX  ›  Linux

请问有没有适合嵌入式 Linux 环境下的基于 ram 的单机 k-v 存储方案?

  •  
  •   Hawy · Oct 6, 2020 · 3911 views
    This topic created in 2032 days ago, the information mentioned may be changed or developed.

    需求如下

    • 基于 RAM 存储,无需持久化
    • 资源占用小,适用于嵌入式 Linux 系统等 RAM 极端受限环境
    • 单机版即可,需满足本地多个进程同时访问
    • C/C++实现且开源

    谢谢!

    13 replies    2020-10-09 10:19:50 +08:00
    reus
        1
    reus  
       Oct 6, 2020
    单机版又何来多个进程同时访问?
    redis 吧。
    ryd994
        2
    ryd994  
       Oct 6, 2020 via Android
    C++ std map ?
    嵌入式一共就那点内存,能玩出什么花样?你也没说什么数据库的要求。单纯查询的话 map 足够了
    跨进程访问可以用 unix socket
    beginor
        3
    beginor  
       Oct 6, 2020 via Android
    SQLite ?
    tempdban
        4
    tempdban  
       Oct 6, 2020 via Android
    搞个共享内存加把锁,你连 socket 都不用实现
    reus
        5
    reus  
       Oct 6, 2020
    如果不需要多进程访问,那随便一个哈希表实现都可以用
    iceheart
        6
    iceheart  
       Oct 6, 2020 via Android
    自己写个也就两天功夫吧
    wangyzj
        7
    wangyzj  
       Oct 6, 2020
    memcached
    这个行不行啊
    leavic
        8
    leavic  
       Oct 6, 2020
    这不就是用 c 把 dict 实现一下吗?
    Hawy
        9
    Hawy  
    OP
       Oct 6, 2020
    @ryd994
    @tempdban
    多谢,C++ std map 加 Boost.Interprocess 搞定!
    elechi
        10
    elechi  
       Oct 6, 2020   ❤️ 1
    berkeley db
    sadfQED2
        11
    sadfQED2  
       Oct 7, 2020 via Android
    Redis memcache 行吗?不行的话自己拿 golang 写一个也用不了多久啊
    mcds
        12
    mcds  
       Oct 8, 2020
    berkeley db,python 自带。kv 数据库还有人推 sqlite 的。。。
    LANB0
        13
    LANB0  
       Oct 9, 2020
    参考 APUE db 的实现
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2756 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 84ms · UTC 13:34 · PVG 21:34 · LAX 06:34 · JFK 09:34
    ♥ Do have faith in what you're doing.