服务应具备的特性思考

  1. 高可用
    能够长时间稳定运行,或在出现故障时能够很快恢复

    • 冗余设计:服务集群,数据库主备,数据备份
    • 监控报警:当系统出现问题时,能最快的通知到相关人员进行修复
    • 限流、熔断、降级:减轻问题服务产生的影响,不让问题扩散
    • 持久化:将用户数据持久化,保证重启后不丢失
    • 业务拆分:根据业务流程,拆分成不同应用
    • 数据库分库分表
  2. 安全性
    保护应用服务及其相关数据的机密性、完整性和可用性,防止未经授权的访问、使用、披露、修改或破坏。

    • 身份验证和授权
    • 数据加密:密码加密
    • 防范网络攻击:使用防火墙,防止SQL 注入、跨站脚本攻击等。
  3. 一致性
    对于有状态应用,要保证各节点数据一致

    • 对于oltp应用,应只使用主资源,而不使用备资源。例如主从mysql,应该只使用主库
    • 对于olap应用,并不需要强一致性,应使用备资源来优化性能
  4. 伸缩性
    可以轻松的通过拓展服务数量来增强服务能力。

    • 无状态(用户数据)应用:由于不保存用户数据可以很方便的拓展实例。例如可以把用户登录信息放在redis中,可以把用户文件放在对象存储服务中,可以把业务数据放在数据库中,而不是由服务本身存储。
  5. 易维护
    能够以相对简单、高效和低成本的方式进行维护、修复和改进

    • 良好的架构:统一的的日志查看组件(elk);及时的监控报警,通知组件(钉钉报警);
    • 完善的文档:技术文档、测试用例文档
    • 清晰的代码:注意耦合和内聚;完善的日志记录;统一的异常处理;统一的方法调用日志记录;
  6. 易用性
    良好的用户体验

    • 界面设计:直观、简洁且布局合理
    • 简单、易懂的操作流程
    • 反馈机制:及时、清晰的反馈和建议;出现错误时,除了提示错误应该给出一些建议;
    • 完善的帮助文档和教程:有一个帮助系统,罗列一些常见的问题,让用户选择,并引导用户解决。
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值