在云HIS项目中,我担任了框架搭建和技术选型的工作,并提供了一些业务场景引发的技术性问题的解决方案。此外,我还负责了devops方面的工作。
该项目使用了dotnet5版本进行开发,并选择了freesql作为ORM工具,因为数据库是拿老项目的表结构所以采用的是dbfirst模式。
为了搭建项目的IM通信功能,使用了FreeIM库,并且注重了IM业务与项目业务的解耦分离,以提高项目的可扩展性。同时,为了解决业务中的悲观锁问题,如医生开处方时可能导致药品表争抢的情况,我们采用了FreeRedis开源库自带的分布式锁功能。
在运维方面,采用了国产的spug工具,实现了对项目的自动化部署、快速迭代和回滚。还引入了Nacos、Seq和yarp微服务组件,用于拆分和边缘化一些业务模块。同时,利用yarp网关转发相关模块的swagger文档界面和接口,方便前端进行接口对接。还建立了日志中心,以便于快速反馈和问题排查。
为了记录项目改动、业务功能点和代码层面的使用规范,使用了阿里云效搭建了文档系统。
除了以上的工作,我还单独开发了统一开发接口平台服务模块,用于应对各种对接方式的第三