原生socket api在实际项目开发中用的多吗
在客户端开发中有时会用,但服务器开发中基本不需要用
■网友
你需要分清什么是需求,什么是工具。
你所问的“什么情况下”,其实问的是“需求场景”,比如聊天IM。而需求场景所面对的是技术类型,比如使用“长链接”还是“短连接”,而socket和各种网络框架库的差异是通过封装帮你提升优化开发效率。
那么问题变为,什么场景下需要手写原生socket?
出了某种新语言没有成熟的开源网络框架库。你自信自己重复造的轮子可以更快更好,以java为例,觉得netty/mina nio性能慢或者对外暴露封装的接口不满足你的应用层需求。这两种情况下,可以考虑自己原生手写socket。其实大多数情况下,没这个必要。
■网友
如果你用Java的话,安利一下netty
■网友
这个要根据需求来看,简单来说,如果大型业务系统,那么建议用成熟的框架,这样开发者可以专注于业务的实现,如果是轻量级的应用,比如物联网嵌入式应用,可以采用简单的方式实现通信过程。
■网友
多。
常见场景:
1. 地图(滴滴打车、外卖送货...)
2. 推送(APP在线推送消息)
3. IM
4. 支付(有的支付结果是需要这样监听的)
5. ...
【原生socket api在实际项目开发中用的多吗】
■网友
做物联网的,跟硬件对接的,或者写基础服务的,都需要
推荐阅读
- 关于用phpfsocket 写Post, 模拟http 报文怎样写入要传输的处理数据
- 入游戏开发坑一年,迷茫中,应该选择原生app游戏还是web html5游戏还是3d重度游戏,未来是何
- 为啥mapinfo火不起来
- Minecraft中通过定义具体继承的方块类来存储方块的额外属性,咋通过编写API改进这种方法
- 求推荐专业书~有关RapidIO 在嵌入式系统告诉互联的应用,实现powerpc与powerpc,或powerpc与fpga实时通信。?
- 菜鸟学习,求教ServerSocket和Socket的问题
- 内蒙古小伙分享草原生活成“网红”游牧生活引百万网友围观
- linux主机之间的进程间通信和主机内部的进程间通信的socket有啥区别
- 通过纯AngularJS+REST API构建Web是否可行?
- 有啥Windows API程序设计的好书吗
