【GoFast】1.常用开源库GoFast,助力Firefly-RK3288物联网服务器开发
一套完整的物联网程序,不单单只有驱动程序需要开发,更多的工作其实是逻辑业务的处理,驱动程序只是为了实现这些功能的基础。经过前面使用Go语言为Firefly RK3288开发了UIO驱动,想必大家对Go有了一些了解。这次回归正统,使用Go语言开发纯应用层的程序。当然这个程序不单单能在Firefly RK3288上运行,其他的操作系统如ARM Linux、Windows、Linux甚至Android、MacOS上也能运行。鉴于Firefly RK3288的高性能,所以以它来举例,将其打造成为一个小型的物联网服务器,可以通过各种网络连接到各种外设,并且可以当作Web服务器实时查看信息。
本着高效率(高开发效率、高执行效率)的原则,这套开发库是我挑选出来的比较常用的东西,经过封装已经解决了大部分的工作量,三言两语就可以实现一个服务器的基本功能,而且可以不用更改任何代码,直接在ARM Linux、Windows、Linux系统中进行编译。当然目前功能不是很多,随着工作的进行,如果遇到一些感觉比较值得封装的地方,我会继续添加进来,使其更加完善。而且部分功能没有全面的测试,所以会有一些Bug存在,恳请指正,我也会随时修改。
好了,不多说了,先来看看目前都具有哪些功能吧,这里是开源库的地址:https://github.com/tjCFeng/GoFast
如图所示,目前的功能包括:
1.DDNS:动态域名,可以申请一个域名,使其随时自动指向任意IP地址;
2.GNSS:地理定位数据解析相关的功能,包括GPS、北斗的数据解析,以及调用一些百度地图的功能;
3.Socket:网络相关的功能,TCP、UDP、WebSocket等;
目前已经经过测试的TCP Server,在Firefly RK3288 Lubuntu上,同时连接15000个设备,每台设备15秒发送一次数据,TCP Server回复确认信息并解析数据然后转发,CPU占用率最大不超过40%,内存100M左右。如果感兴趣的话请随我一起来实现。
由Firefly管理员对tjCFeng原创帖Go语言系列的归类:
【GoFast】系列
【GoFast】1.常用开源库GoFast,助力Firefly-RK3288物联网服务器开发
【GoFast】2.DDNS,动态域名
【GoFast】3.NM0183定位数据协议
【GoFast】4.在线地图功能的调用
【GoFast】5.物联网之基础 - TCP Server
【GoFast】6.物联网之基础 - TCP Client
【GoFast】7.最有意思的 - WebSocket
【GoFast】8.完结篇 - 网络架构
【GORK3288】系列
【GoRK3288】1.Rockchip RK3288, GO!GO!!GO!!!
【GoRK3288】2.Go语法简要说明及GoRK3288结构
【GoRK3288】3.GPIO操作方法(1)
【GoRK3288】4.GPIO操作方法(2)
【GoRK3288】5.PWM操作方法
【GoRK3288】6.TSADC操作方法
【GoRK3288】7.WatchDog操作方法
go系列的更新,很给力! 暴走的阿Sai 发表于 2015-8-5 17:55
go系列的更新,很给力!
谢谢,感谢支持:lol 高大上啊 本帖最后由 szhacker 于 2015-8-6 17:22 编辑
谢谢,很有启发,但是没看到之前如何用golang控制uio驱动?在哪个帖子里有?能提示下吗? szhacker 发表于 2015-8-6 17:06
谢谢,很有启发,但是没看到之前如何用golang控制uio驱动?在哪个帖子里有?能提示下吗?
http://developer.t-firefly.com/thread-1169-1-1.html
就在本版中,带编号的都是。 go系列,简直是颠覆了 很优秀的讲解。。。。。 学习...............
页:
[1]