suvera / winter-memdb
Winter Memdb模块支持许多内存数据库,例如Apache Ignite、Redis、Memcached等。
dev-master
2021-07-31 05:31 UTC
Requires
- ext-posix: *
- ext-swoole: *
- gridgain/client: dev-master
This package is auto-updated.
Last update: 2024-09-29 05:56:48 UTC
README
Winter内存数据库(memdb)是一个模块,它将内存数据库引擎集成到winter-boot框架中。
以下数据库可能被集成,应用程序启动时自动启动,停止时停止。
- Redis
- Apache Ignite
- Hazelcast
- Memcached
- RocksDB
- H2
设置
- 这需要
swoole
PHP扩展
composer require suvera/winter-memdb
要在应用程序中启用Memdb模块,请将以下代码追加到application.yml
modules: - module: dev\winterframework\memdb\MemdbModule enabled: true configFile: memdb-config.yml
configFile是文件路径(相对于配置目录或绝对路径)
memdb-config.yml
# Redis redis: # Redis Configuration here, see below section # Apache Ignite ignite: # Apache Ignite Configuration here # Memcached memcached: # Memcached Configuration here # Hazelcast hazelcast: # Hazelcast Configuration here
1. Redis
Redis配置
redis: - name: redisServerBean01 serverBinary: /usr/local/bin/redis-server confFile: redis_1.conf # relative or absolute path args: ""
- 允许许多服务器配置。
- 框架将自动根据给定名称创建客户端Bean。例如:"redisServerBean01"
#[Autowired('redisServerBean01')] private PhpRedisTemplate $redis;
2. Apache Ignite
Apache Ignite配置
ignite: - name: igniteServerBean01 serverBinary: /etc/apache-ignite-2.10.0/bin/ignite.sh # Optional config confFile: ignite-config.xml # relative or absolute path args: ""
- 允许许多服务器配置。
- 框架将根据给定名称自动创建客户端Bean。例如:"igniteServerBean01"
#[Autowired('igniteServerBean01')] private IgniteCacheTemplate $ignite;
3. Memcached
- 这需要
memcached
或memcache
PHP扩展
Memcached配置。
memcached: - name: memcachedServerBean01 serverBinary: /usr/bin/memcached host: 127.0.0.1 port: 11211 udpPort: 0 unixSocket: pidfile: "/var/run/memcached_1.pid" args: "-u memcached "
- 允许许多服务器配置。
- 框架将根据给定名称自动创建客户端Bean。例如:"memcachedServerBean01"
// `memcached` php extension installed #[Autowired('memcachedServerBean01')] private MemcachedTemplate $memcached; // OR // if `memcache` php extension installed #[Autowired('memcacheBean02')] private MemcacheTemplate $memcache;
4. Hazelcast
- Hazelcast需要作为客户端的
memcached
PHP扩展
pecl install memcached
Hazelcast配置。
hazelcast: - name: hazelcastBean01 serverBinary: etc/hazelcast-4.2.1/bin/start.sh confFile: /etc/hazelcast/config/hazelcast.xml bootUpTimeMs: 300 args: ""
- 允许许多服务器配置。
- 框架将根据给定名称自动创建客户端Bean。例如:"hazelcastBean01"
#[Autowired('hazelcastBean01)] private MemcachedTemplate $hazelcast;
注意:Hazelcast配置需要启用memcache。请在此处查看https://docs.hazelcast.com/imdg/4.2/clients/memcache.html
<hazelcast> ... <network> <memcache-protocol enabled="true"/> </network> ... </hazelcast>