架构
以我技术不会翻
很高兴和大家一起学习java
展开
-
线程数究竟设多少合理
一、需求缘起 Web-Server通常有个配置,最大工作线程数,后端服务一般也有个配置,工作线程池的线程数量,这个线程数的配置不同的业务架构师有不同的经验值,有些业务设置为CPU核数的2倍,有些业务设置为CPU核数的8倍,有些业务设置为CPU核数的32倍。 “工作线程数”的设置依据是什么,到底设置为多少能够最大化CPU性能,是本文要讨论的问题。 二、一些共性认知转载 2016-09-01 11:05:42 · 9977 阅读 · 2 评论 -
缓存架构设计细节二三事
本文主要讨论这么几个问题: (1)“缓存与数据库”需求缘起 (2)“淘汰缓存”还是“更新缓存” (3)缓存和数据库的操作时序 (4)缓存和数据库架构简析 一、需求缘起 场景介绍 缓存是一种提高系统读性能的常见技术,对于读多写少的应用场景,我们经常使用缓存来进行优化。 例如对于用户的余额信息表account(uid, money),业务上转载 2016-09-01 11:22:35 · 1070 阅读 · 0 评论 -
互联网架构为什么要做服务化
一、互联网高可用架构,为什么要服务化? 【服务化之前高可用架构】 在服务化之前,互联网的高可用架构大致是这样一个架构: (1)用户端是浏览器browser,APP客户端 (2)后端入口是高可用的nginx集群,用于做反向代理 (3)中间核心是高可用的web-server集群,研发工程师主要编码工作就是在这一层 (4)后端存储是高可用的db集群,数据存储在转载 2016-09-01 11:43:51 · 2445 阅读 · 0 评论 -
分布式应用保证事务原子性方案
一、案例缘起 我们经常使用事务来保证数据库层面数据的ACID特性。 举个栗子,用户下了一个订单,需要修改余额表,订单表,流水表,于是会有类似的伪代码: start transaction; CURDtable t_account; any Exception rollback; CURDtable t_order; a转载 2016-09-01 14:09:45 · 3010 阅读 · 0 评论