欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

架构分享[个人笔记] memcachedCacheSQLitePHP框架 

程序员文章站 2024-03-23 17:21:16
...

1. 缓存-->系统替代程序员接管了缓存的存取访问,缓存的 Key 和 Value 由系统处理.
2. cache 处理器的引入减少了 40% 的数据访问层代码 !
3. 采用了 Namespace 的方法使得缓存能自动清除了.
4. Namespace 借助 PHP fcgi + SQLite 使得系统变得很慢 (10000w pv/day)
5. memcached 不支持namespace,也不支持遍历.
6. 际遇之前开发的 monkey(java nio 框架)实现了一个支持namespace 遍历功能的内存缓存程序 jmcd.我们采用了简单高效的 STP 协议.
7. 逻辑层(cache 处理器)-->R
 数据访问层(cache 处理器)-->W
8. NS处理器 --->Namespace cache
9. Data Accessor---->缩减数据访问代码.
10. DAL 关于分库:
 1). 垂直切分---> 分到不同的数据库和服务器
 2). 水平切分: 对数据进行水平分割. (最好分在同一个数据库)
  a). 主表+辅表.
11. 缓存不应该紧耦合于业务逻辑.
12. 慎用 XC/APC 缓存, mc/jmc 这种远程缓存已经够用了。
13. 缓存的最佳实践:
  缓存单个条目,根据 id list (unique key list) 找到表。
14. 缓存能自动清理就自动清理,不能自动--->想办法自动清理.
15. DAL Server2.0 : core + plugins
 core: 配置处理,查询分析,选路策略,数据处理 .
 plugins :CacheProvider, ConnectionProvider