构建可复用微服务框架的技术实践
1. 微服务底盘设计
团队选择 Nameko 作为微服务底盘的一部分,因为它能轻松抽象出通过现有消息代理实现和设置两种通信类型的细节。消息代理还具备负载均衡能力,这是其自带的另一优势。
2. 可观测性
为了运营和维护服务,需要时刻了解生产环境中的情况。因此,希望服务能够发出指标以反映其运行方式、报告错误,并以可用格式聚合日志。
微服务底盘的依赖如下:
# microservices-in-action/chapter-7/chassis/setup.py
(…)
keywords='microservices chassis development',
packages=find_packages(exclude=['contrib', 'docs', 'tests']),
install_requires=[
'nameko>=2.6.0',
'statsd>=3.2.1',
'nameko-sentry>=0.0.5',
'logstash_formatter>=0.5.16',
'circuitbreaker>=1.0.1',
'gutter>=0.5.0',
'request-id>=0.2.1',
],
(…)
在这七个声明的依赖中,有三个用于可观测性目的:
- 以 StatsD 格式发出指标的库
超级会员免费看
订阅专栏 解锁全文
171万+

被折叠的 条评论
为什么被折叠?



