分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请轻击人工智能教程大家好!欢迎来到我的网站! 人工智能被认为是一种拯救世界、终结世界的技术。毋庸置疑,人工智能时代就要来临了,科… 继续阅读 前言https://www.captainai.net/troubleshooter

好处一:调用方便
在有服务层之前,业务方访问用户数据,需要通过DAO拼装SQL访问。
有了服务层之后,业务方通过RPC访问用户数据,就像调用一个本地函数一样,非常方便。

好处二:复用性,防止代码拷贝
所有user数据的存取,都通过user-service来进行,代码只此一份,不存在拷贝。
升级一处所有都生效,bug修改一处所有都修改。

好处三:专注性,屏蔽底层复杂度

在没有服务层之前,所有业务线都需要关注缓存、分库分表这些细节。

在有了服务层之后,只有服务层需要专注关注底层的复杂性了,向上游屏蔽了细节。

好处四:SQL质量得到保障

原来是业务访问代码,然后拼接sql访问数据库。

有了服务层之后,所有的SQL都是服务层提供的,业务线不能再为所欲为了。底层服务对于稳定性的要求更好的话,可以由更资深的工程师维护,而不是像原来SQL难以收口,难以控制。

好处五:数据库解耦

原来各个业务的数据库都混在一个大库里,相互join,难以拆分。

服务化之后,底层的数据库被隔离开了,可以很方便的拆分出来,进行扩容。

好处六:提供有限接口,无限性能
在服务化之前,各业务线上游想怎么操纵数据库都行,遇到了性能瓶颈,各业务线容易扯皮,相互推诿。
服务化之后,服务只提供有限的通用接口,理论上服务集群能够提供无限性能,性能出现瓶颈,服务层一处集中优化。

注:服务化不能解决所有问题,如果没有碰到这些问题,架构未必需要服务化。架构设计一定要依托于业务。

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐