睿仁医疗架构实践
2017-11-08
记者:睿仁医疗的产品是什么?开发背景是什么?
望乐乐:睿仁医疗致力于研发 移动互联网的无线监测医疗产品。目前推出的是一款用于婴儿发烧时持续监测体温的温度计。
记者:在设计产品架构时遇到了哪些经验和教训?
望乐乐:早期用户量相对较少,且产品需要尽早投入市场使用。所以我们选择PHP作为技术栈。架构方面我们也采用了最经典的LNMP组合、双机策略,前面加一层负载均衡。服务于用户APP、PC/WAP、业务后台等业务。一些基础业务,出于成本考虑,我们也都自己搭建。如:邮件发送,缓存服务。随着用户的增长,业务场景变更过快,也暴露出了很多问题,基础服务不稳定,维护成本越来越高,用户集中使用时频频发生宕机事件。
睿仁医疗云端部门技术总监望乐乐
记者:睿仁医疗做了哪些实践?
望乐乐:目前的云服务供应商提供的服务已经很成熟稳定了,我们选择部分第三方服务作为我们的基础服务。满足大批量集中式和少量分布式文件的数字化采集,实现分类、索引、审批和分发全流程的数字化管理,同时支持移动终端和企业云服务。采用第三方动态扩展数据库、自动负载均衡的应用容器、适合应用场景的自建框架方案以及监控中心调用Log管理。架构层是最重要的,包括容量规划、单点消除、服务分级和降级、熔断机制、系统监控及性能监控等。
记者:对后继开发者有哪些建议?
望乐乐:一,不要过度依赖框架,虽然框架能够极大的
简化我们的劳动,但是框架毕竟只是工具,不应该成为束缚我们手脚的囚笼。二,练好扎实的基本功,语言都是万变不离其宗,但是扎实的算法、数据结构、操作系统和网络知识才是我们技术持续发展的根基。三,对语言不要过度排他性,每种语言都有自己的特点和使用场景,所以有时间不妨多了解学习其他的的语言,只有这样,才能在任何一种场景下都能找到最适合的语言和架构。四,遵从规范,从编码规范、自动加载方式到消息格式、缓存机制等,不断从过去的风格转向规范有助于语言的推广。