是否有一种方式可以实现交互式的常驻内存的go服务?
背景
本人在开发一个基于CGO的sdk,简单来说就是一个动态链接库,目的是为了可以让各种语言进行调用,内置了一些简单的查询服务以及校验证书等功能。因为其中有一些配置载入,环境初始化的操作,例如redis连接池,日志目录的指定,证书的解析等等,所以可能在程序开始有一个start方法,用于做初始化工作。然后有一些destroy方法来做清理。和spring的service很像,但是spring是基于web的,我这个是作为动态库直接被语言调用。
问题
能不能有一种好用的中间件或者技术或者思路来达到这个目的。例如我目前只做到了写一个cli来在命令行中调用我的so文件,例如导入配置,导入完了它不是一个常驻内存的服务,我再调用查询方法,可能前一个导入的没用了。我看了下网上有一些kardianos/service这种作为后台服务的,但是貌似也只能作为后台运行,暂且不知道在动态链接库中如何调用等等。
你是想常驻内存一个,其他的cli作为输入端使用?那就用微服务吧,常驻内存的一个服务,其他的cli命令向它输入数据执行任务