plain framework 1 1.0.3更新 优化编译部分、网络压缩和加密
有些东西总是姗姗来迟,就好比这新年的钟声,我们盼望着新年同时也不太旧的一年过去。每当这个时候,我们都会总结一下在过去的一年中我们收获了什么,再计划新的一年我们要实现什么。PF并不是一个十分优秀的框架,可以说这只是出于作者们对自己技术的总结。本次版本比我计划的要晚,一方面是因为新年的原因,另一方面又是工作的原因,诚然这些都只不过是为推卸责任的借口,而这责任却是对自己的。再多的话语,只能留待来年,本次更新比较匆忙,希望有用到的朋友可以反馈BUG到issue上,让我能及时跟进。同时祝大家在新的一年:幸福健康、万事如意!
PF 1.0.3
更新了windows平台上x64的编译,包括静态库与动态库。
更新了windows平台的vs编译脚本,更人性化和智能的提示编译错误。
更新了网络模块部分,增加网络流压缩和加密的机制。
WINDOWS 64位支持
现在使用编译器可以看到x64的选项,前提是你的VS要支持才行,其次本次修改了VS的脚本,包括调试版本、正式版本的所有静态或动态库都能顺利编译。
WINDOWS编译提示
在windows平台编译一直以来是觉得比较纠结的地方,主要是因为vs本身的机制,所以导致了编译的时候需要重命名源文件(.c .cc .cpp),本次的更新中如果没有重命名文件,将在编译器中直接给出错误。
如上图,本次给出的提示比较明显了,只要使用了重命名脚本再次编译就没有改错误了。
网络压缩和加密
void set_compressmode(uint8_t mode); //压缩模式 0 不压缩 1 输入流压缩 2 输出流压缩 3 输入流和输出流都压缩
uint8_t get_compressmode() const;
void encryptenable(bool enable); //加密开关
void encrypt_setkey(const char *key); //设置加密key
这几个方法都放在网络连接对象上,在这里暂不说实现的原理,先谈谈什么情况下使用压缩和加密。要压缩基本上数据都较大,如超过了1k可以考虑压缩,如果你的网络数据不可能超过还是不要启用压缩。加密是争对连接中的数据要求不太容易被人发现,加密key的设置时间一般在建立连接之后。加密是双向的,输入流和输出流都加密,而压缩是单向的,因为有些数据不需要压缩,你可以选择你要压缩输入和输出流,因为这两个流量大小不同,所以需要根据情况选择。
压缩和加密是会消耗性能的,一般如果没有这些需求的情况下,建议不启用这两种模式。
PF商业版核心人员招募
开篇语
我们没有大神,只有解决问题的人。
我们没有强悍的技术,只有一颗向往简单的心。
我们没有惊人的理论,只有一堆不可思议的妄想。
我们不需要复杂,只需要够简洁。
我们不需要固定的思维,只需要你能想得到。
核心成员资格需求
1、精通或熟练掌握一门语言
2、能够接受和遵从谷歌C++代码风格
3、灵活而大胆的思考问题
4、能够在规定时间段内完成自己分配的模块(可以灵活调度)
5、有坚持不懈的动力(很重要)
核心成员项目优势
1、无限制的使用商业版到自己的项目中,如果是别的项目则需要和所有成员商量
2、在过程中,你可以得到飞一般的技术提高
3、商业版如果有盈利核心成员的利益将会最大
名额有限,如果大家想加入的话,请发送一段自己熟悉的语言利用plain framework(简称PF)风格的代码到邮箱viticm.ti@gmail.com,我们将尽快的在15年前确定人选,因为商业版的计划从15年1月份开始。
PF托管地址
https://github.com/viticm/plainframework1
PF安装教程
http://www.cnblogs.com/lianyue/p/3974342.html
PF交流QQ群
plain framework 1 1.0.3更新 优化编译部分、网络压缩和加密的更多相关文章
- plain framework 1 1.0.4 更新 稳定版发布
PF由于各种因素迟迟不能更新,此次更新主要是更新了以往和上个版本出现的内存问题,该版本较为稳定,如果有用到的朋友请更新至此版本. PF 1.0.4 修复1.0.0.3更新后产生的内存问题,可能导致网络 ...
- plain framework 1(简约框架)一款主要用于网络(游戏)开发的C/C++框架 即将开源发布
在我们的日常开发中,我们往往会遇到这种情况,当我们换了一个开发环境时很可能会重新利用一套新的框架进行开发.由于不同框架有着不同的接口,所以我们不得不花时间再次熟悉这些接口,这将造成开发时间上的重复,而 ...
- Android Studio 1.1.0版本以上 优化编译
本文不写内容,只是借用别人链接.不过大概内容都如下链接: http://blog.csdn.net/hyr83960944/article/details/38388429 http://bbs.it ...
- plain framework 1 版本更新 1.0.2 增加打包插件
由于个别因素,该框架的文档没有及时的更新到博客上,但是离线的文档已经完成.本次更新对框架来说显得比较重要,因为在文档的编写过程中经过再次的阅读代码修复了不少错误,最主要的是统一了整个框架的标准风格.对 ...
- ASP.NET MVC深入浅出系列(持续更新) ORM系列之Entity FrameWork详解(持续更新) 第十六节:语法总结(3)(C#6.0和C#7.0新语法) 第三节:深度剖析各类数据结构(Array、List、Queue、Stack)及线程安全问题和yeild关键字 各种通讯连接方式 设计模式篇 第十二节: 总结Quartz.Net几种部署模式(IIS、Exe、服务部署【借
ASP.NET MVC深入浅出系列(持续更新) 一. ASP.NET体系 从事.Net开发以来,最先接触的Web开发框架是Asp.Net WebForm,该框架高度封装,为了隐藏Http的无状态模 ...
- plain framework 1 一款主要用于网络(游戏)开发的C/C++开源框架 安装篇 updated
上次介绍了一下plain framework的基础相关资料,今天该框架正式开源发布.项目的地址托管于github上,我相信大多数朋友都应该知道.今天要介绍的是该框架的目录基本结构,以及分别在linux ...
- Working with Data » Getting started with ASP.NET Core and Entity Framework Core using Visual Studio » 更新关系数据
Updating related data¶ 7 of 7 people found this helpful The Contoso University sample web applicatio ...
- .Net Core 2.0生态(4):Entity Framework Core 2.0 特性介绍和使用指南
前言 这是.Net Core 2.0生态生态介绍的最后一篇,EF一直是我喜欢的一个ORM框架,随着版本升级EF也发展到EF6.x,Entity Framework Core是一个支持跨平台的全新版本, ...
- 谈一款MOBA类游戏《码神联盟》的服务端架构设计与实现(更新优化思路)
注:本文仅用于在博客园学习分享,还在随着项目不断更新和完善中,多有不足,暂谢绝各平台或个人的转载和推广,感谢支持. 一.前言 <码神联盟>是一款为技术人做的开源情怀游戏,每一种编程语言都是 ...
随机推荐
- H5+JS+CSS3 综合应用
慕课网新教程H5+JS+CSS3 实现的七夕言情主题效果已经出炉了 从设计到实现到录制与编写用了快1个月的时间,说真的这个案例是慕课定制的,我之前也没有系统的做过这样的一个效果,在实现的时候自己也重新 ...
- IEEE浮点标准
原文地址:http://www.math.byu.edu/~schow/work/IEEEFloatingPoint.htm Floating point system Floating point ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(15)-权限管理系统准备
系列目录 这节我们说下权限系统的特点,本系统采用的是MVC4+EF5+IOC 接口编程的架构,其中的权限树用的是DWTree,功能上做到灵活,授权操控细致,权限可以细到按钮级别 ,为了部署简单,导致设 ...
- Android开发之基本控件和详解四种布局方式
Android中的控件的使用方式和iOS中控件的使用方式基本相同,都是事件驱动.给控件添加事件也有接口回调和委托代理的方式.今天这篇博客就总结一下Android中常用的基本控件以及布局方式.说到布局方 ...
- CRL快速开发框架系列教程四(删除数据)
本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...
- # ios开发 @property 和 Ivar 的区别
ios开发 @property 和 Ivar 的区别 @property 属性其实是对成员变量的一种封装.我们先大概这样理解: @property = Ivar + setter + getter I ...
- LINQ to SQL语句(6)之Group By/Having
适用场景:分组数据,为我们查找数据缩小范围. 说明:分配并返回对传入参数进行分组操作后的可枚举对象.分组:延迟 1.简单形式: var q = from p in db.Products group ...
- C#开发微信门户及应用(23)-微信小店商品管理接口的封装和测试
在上篇<C#开发微信门户及应用(22)-微信小店的开发和使用>里面介绍了一些微信小店的基础知识,以及对应的对象模型,本篇继续微信小店的主题,介绍其中API接口的封装和测试使用.微信小店的相 ...
- C#开发微信门户及应用(11)--微信菜单的多种表现方式介绍
在前面一系列文章中,我们可以看到微信自定义菜单的重要性,可以说微信公众号账号中,菜单是用户的第一印象,我们要规划好这些菜单的内容,布局等信息.根据微信菜单的定义,我们可以看到,一般菜单主要分为两种,一 ...
- alias拦截器的使用
在SSH项目中,有时需要由一个Action跳转到另一个Action.有两种方式可以实现Action之间的跳转,一种是chain,另一种是redirectAction,这两种方式之间的区别是chain是 ...