如果我们仔细思考会发现,不管是跨进程的分层架构,还是进程内的MVC分层,都是一个“数据移动”,然后“被处理”和“被呈现”的过程,归根结底一句话:互联网分层架构,是一个数据移动,处理,呈现的过程,其中数据移动是整个过程的核心。 弄清楚这个原则与方法,再加上一些经验积累,就能回答网友经常在评论中提出的这些问题了:
当业务越来越复杂,垂直拆分的系统越来越多,数据库实施了水平切分,数据层实施了缓存加速之后,底层数据获取复杂性成为通用痛点的时候,就应该抽象出数据服务层,简化数据获取过程,提高数据获取效率,向上游屏蔽底层的复杂性。
千万别鲁莽的在“微服务”大流之下,草率的进行微服务改造,看似“高大上架构”的背后,隐藏着更多并未接触过的“大坑”。还是那句话,架构和业务的特点和阶段有关:一切脱离业务的架构设计,都是耍流氓。 作者 沈剑 ·“架构师之路”作者,深夜写写技术文章 ·百度-高级工程师 ·58同城-高级架构师,技术委员会主席,技术学院优秀讲师 ·58到家-高级技术总监,技术委员会主席 ·58速运-CTO
|
|