我所热衷的编程生涯 连载(9)

来源:互联网 发布:淘宝职位招聘 编辑:程序博客网 时间:2024/04/20 00:27

    如果那时转念一想, VB效率不行, 我还是用C++开发, 说不定我现在就是个游戏开发工程师了. 感觉还是蛮爽的, 不过可能也不尽然是我最想要的结果吧. 所以一个人最自在的莫过于清楚的知道自己要的是什么. 其实在生活中也是这样, 不断的体验和改变生活周围的变化, 完善自己, 适应和微调环境, 以让自己心灵和身体有一个舒服的港湾, 这是无可厚非的, 但是很多人其实因为各种各样的原因, 过着自己不是很满意却还凑活的生活, 有自己的想法, 有自己的观点, 却不会主动的表达出来并尝试改善, 因为他们知道言多必失, 祸从口出, 这样反而让自己失去了很多本该有的机会. 我这样说并不是因为我觉得自己没有去开发游戏可惜了, 我反而是庆幸这样, 因为游戏开发也只是我一时的激情, 和长期酝酿出来的想法还是有很大差距的. 我深信我还没有找到自己合适的事情做, 还需要继续的琢磨和等待...

    以前有些同学很喜欢搞网页开发, 不过我对这块的兴趣着实不大, 但是对于网络通讯却是兴趣满满. 希望在这方面有所发展, 甚至有所建树. 这时候我突然想到了浏览器. 貌似做浏览器的很多很多, 我就不提名了, 有打广告的嫌疑. 而我想到的并非是做个浏览器, 我觉得太外围, 技术含量太低了, 没有什么核心竞争力. 对的, 就是这样, 我是想做浏览器内核. 目前市场上的浏览器内核有Trident, Gecko, Presto, Webkit, WebCore, KHTML了解的同学应该知道吧. 那段时间我就开始研究各种浏览器内核技术, 数据解析, 呈现什么的. 后来还真的着手开发, 做了些框架的计划, 流程, 代码构架什么的, 不过还是因为不了解水有多深啊, 了解的越多才发现我所希望开发出来的国产自主知识产权的浏览器内核完全是痴人说梦啊. 别说时间精力不说, 就是技术都需要从头开始, 压根就是个不可能完成的任务啊... 放弃开发浏览器内核后, 沉静了一阵子. 结合以前自己的开发经验觉得还是开发一款更有功能性的产品出来比较现实. 

    这个时候我又要散打评书散出去了, 一直在说我的业务开发, 也说说我的工作吧. 第一家公司是个工控行业的, 做的产品是触摸式工控一体机. 软件方式就是嵌入式的, 在这家公司我学到了不少嵌入式开发相关的东西, 驱动, 芯片, 内核什么的, 不过我并没有成为这方面的专家, 也没有往这方面继续发展. 原因很简单, 我不好这口. 不过话说回来, 嵌入式开发是很吃香的. 我还是希望走自己的路, 待了4年半辞职走了. 第二家公司是个做视频监控的, 用电脑上的视频采集卡, 然后通过网络将整个系统搭建成一个平台供公安局等政府机构用, 我不用细说大家也知道优越在哪了吧. 待了1年就走了, 因为产品做的太差了, 也不想办法改进, 就靠商务..哎 我的工作大概就是这样 没啥精彩的地方可以说, 反而是我的业余开发显得有滋有味的.

    好了, 散回来吧. 浏览器内核放弃之后我就开始真正的潜下心来做通讯开发了, 因为一直爱好这块, 平时看书和网上查资料什么的都偏重这些, 所以干脆做产品也从这块入手. 后来在开发完成数据管理后, 我就进行数据通讯和P2P模式方面的开发了.(终于绕回来了)

    接着第7篇的说吧. 内网穿透其实在某些路由器中是无法实现的, 为什么呢? 因为路由器的底层协议就是那样的. 就是对称和非对称路由器的区别.(这个具体大家可以查资料, 网上很多的). 我这里主要讲讲我的解决方案: 1.  数据转发.  就是使用外网的服务器来实现端对端数据的转发, 所有两者通讯数据都经过服务器来中转. 2. 根据猜测对称NAT产生Session的方式来尝试内网穿透. 3. 做端口映射. 第一种方式比较靠谱, 但是对服务器会造成很大的压力. 第二种显然不行, 如果遇到对称NAT以随机的方式产生Session的话, 是无法猜测正确的. 第三种方式更不靠谱, 不可能把所有网络通讯的路由器端全部做上端口映射吧. 后来我将服务器转发实践了下, 还行, 只要是控制分散好压力就行.

    未完待续....