广告位 后台主题配置管理 |
广告位 后台主题配置管理 |
本篇文章给大家谈谈手机服务器开发架构,以及安卓服务器端开发对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
拿PHP + MYSQL架构来说
对于简单的信息提供 信息处理分发 自然是不在话下的
在GET和POST获得用户的请求信息 也可以用REST
之后根据用户的请求处理好返回的信息后包装成XML或者JSON分发给用户
譬如 网站客户端 查询系统啊什么的
也不是说网络游戏后端不能用PHP
毕竟HTML5+PHP还是能实现很多东西的
当然PHP可以干的活 Java Python GO 都可以干
但是太复杂的东西PHP就不合适了
具体采用什么架构取决于你的应用需求和自己的熟悉程度
你有两种方法,一种是租用VPS,然后用socket编程,这个我觉得比较适合你。所谓的vps和一般提供网站服务的虚拟主机不同,而更像一台完整的(虚拟)的电脑,和你运行在自己机器上一样的程序在上面跑。这种情况下,使用裸的TCP或UDP协议与主机通讯。
另外一种就是提供网站服务的虚拟主机,ASP比较过时了,要么用ASP.NET(若你习惯微软的环境),要么还是用php吧。后者的主机比较容易找一般也相对便宜。你熟悉Java的话,JSP也可以。这种情况下,通讯使用HTTP协议,你在手机上使用HTTP的API和服务器通讯。HTTP协议是上层应用协议,相当于在TCP上包了一层。
数据库的话,后面一种提供网站服务的一般都带,你和服务提供商确认就可以了。前一种的话,因为从使用角度看上去完全是一台完整的电脑,你可以自己装任意的数据库,也没什么新鲜的了。
压缩的话,后一种提供网站服务的,根据你具体选择的技术方案,有的Web中间件(比如IIS)是带GZip一类的功能的;手机上的HTTP库能不能支持就不一定了,像Android之类应该是没问题的。前一种VPS你自己可以找个zip库压缩,也可以随便抄个简单的压缩算法。
多说两句的是,你虽然没有web经验,但不要被那些讲解Web技术的文章影响你的编程方案选择。Web编程这一块本来是简单直接的,但趴在Web技术上的所谓工程师很多,他们中间一些闲工夫多的就琢磨出很多花活儿来;显得好像Web技术也很高深似的。
整个圈子不是搞脱了裤子放屁的编程框架的伪大神,就是被这些大神忽悠的自以为自己真会点儿什么的菜鸟。当然简单的东西往复杂了做也有益处,看看那些互联网公司连个指针都操作不了的所谓“程序员”的工资就知道了。
就你的需求,或者选用自己最擅长的、或者如果基于HTTP协议的话选择最简单的方案来做。
直播平台开发完成后,不可避免的要进行在线视频直播系统的搭建部署。此时,也需要根据当初源码开发时的功能,选择合理的服务器搭建部署方案。服务器架构方面通常要用到云存储服务器、流媒体服务器或CDN、socket集群、Redis集群和Mysql集群等。如果只是聊天平台,对整个服务器架构的要求不会太高。如果没有单独的传统直播版块,就不会存在让人头疼的高并发问题;如果没有小视频版块,对实际的云存储也不会要求太高。但是,现在绝大多数的网络视频直播平台不会放弃这两个版块的,传统的视频直播间能够为平台和主播带来稳定的变现方式,而小视频功能则是当下火热的推广手段,同时在视频直播交友平台上也很容易实现付费小视频营销。我们有现成源码,可以免费搭建的。
不全属于C/S架构,手机APP软件除了C/S架构,还有单机版APP,B/S架构等类型的APP。
在C/S结构中,应用程序分为两部分:服务器部分和客户机部分。服务器部分是多个用户共享的信息与功能,执行后台服务。典型的如一些聊天APP,视频APP等就是作为本地客户机,与服务器端进行信息交流、请求等,属于典型的C/S结构。
B/S架构中,客户机上只要安装一个浏览器,如Netscape Navigator或Internet Explorer,服务器安装SQL Server、Oracle、MYSQL等数据库。浏览器通过Web Server 同数据库进行数据交互。手机中就有许多浏览器应用,是属于B/S架构的。当然手机中还有一些单机版游戏等应用。
扩展资料:
C/S和B/S的比较:
1、硬件环境的比较:
CS建立在局域网的基础上,局域网之间再通过专门服务器提供连接和数据交换服务。在CS结构中,客户机和服务器都需要处理数据任务,这就对客户机的硬件提出了较高的要求。BS结构建立在广域网之上,不必配备专门的网络硬件环境。
2、系统维护 、 升级的比较
CS结构中的每一个客户机都必须安装和配置相关软件,如操作系统、客户端软件等。BS结构中每一个客户端只需通过浏览器便可进行各种信息的处理,而不需要安装客户端软件,维护、升级等几乎所有的工作都在服务器端进行,如果系统需要升级,只需要将升级程序安装在服务器端即可。
参考资料来源:百度百科-B/S架构
参考资料来源:百度百科-C/S架构
首先,App的服务端跟Web的服务端没有多大区别,而且在实际的开发过程中,业务逻辑也都是共用一套,只是会针对不同的客户端做不同的适配(这点可参考Amazon,其对PC的web端,移动的Web端,移动的App都做了不同程度的适配).
其次,既然与Web的服务端没多大区别,那所用的技术也大同小异,对于App而言,服务端更多是一个数据接口,所以框架页大同小异;
最后,大致总结一下:
技术:
网络通信: tcp,http等;
Web服务:servlet, cgi脚本,asp等;
系统调度:多线程,并发等;
框架:
对应不同的web服务技术,采用的编程语言不同;
对应不同的网络通信协议,采用的框架也不同,netty-tcp,servlet等web服务框架-http等;
对应系统调度,有不同的多线程,多进程通信框架等;
对应提供不同的服务接口,有web service和restful两大类,前者基于soap协议,后者基于http协议,对应的框架就很多,不一一叙述;
除此之外,还有很多其他的技术,可先做,发现问题,自然就知道怎么去找相应的技术、解决方案(包含框架)来解决,所以先动手吧;
主要总结了7个好用的android 开发框架推荐给你:
一、 Afinal
Afinal是一个Android的ioc,orm框架,内置了四大模块功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。通过finalActivity,我们可以通过注解的方式进行绑定ui和事件。通过finalBitmap,我们可以方便的加载bitmap图片,而无需考虑oom等问题。通过finalDB模块,我们一行代码就可以对android的sqlite数据库进行增删改查。通过FinalHttp模块,我们可以以ajax形式请求http数据。
功能:
一个android的ioc,orm框架,内置了四大模块功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。通过finalActivity,我们可以通过注解的方式进行绑定ui和事件。通过finalBitmap,我们可以方便的加载bitmap图片,而无需考虑oom等问题。通过finalDB模块,我们一行代码就可以对android的sqlite数据库进行增删改查。通过FinalHttp模块,我们可以以ajax形式请求http数据。
优点:功能比较全面,文档完善,代码效率比较高。
缺点:没有项目demo,框架的时间比较久,代码冗余比较多(这也是无可避免的),文档比较老跟不上代码更新进度。
二、 xUtils
xUtils:可以说是Afinal的升级版。
xUtils 包含了很多实用的android工具。
xUtils 支持大文件上传,更全面的http请求协议支持(10种谓词),拥有更加灵活的ORM,更多的事件注解支持且不受混淆影响...
xUitls 最低兼容android 2.2 (api level 8)
三、 ThinkAndroid
ThinkAndroid是一个免费的开源的、简易的、遵循Apache2开源协议发布的Android开发框架,其开发宗旨是简单、快速的进行Android应用程序的开发,包含Android
mvc、简易sqlite orm、ioc模块、封装Android
httpclitent的http模块,具有快速构建文件缓存功能,无需考虑缓存文件的格式,都可以非常轻松的实现缓存,它还基于文件缓存模块实现了图片缓存功能,在android中加载的图片的时候,对oom的问题,和对加载图片错位的问题都轻易解决。他还包括了一个手机开发中经常应用的实用工具类,如日志管理,配置文件管理,android下载器模块,网络切换检测等等工具
四、 LoonAndroid
如果你想看ui方面的东西,这里没有,想要看牛逼的效果这里也没有。这只是纯实现功能的框架,它的目标是节省代码量,降低耦合,让代码层次看起来更清晰。整个框架一部分是网上的,一部分是我改的,为了适应我的编码习惯,还有一部分像orm完全是网上的组件。在此感谢那些朋友们。
整个框架式的初衷是为了偷懒,之前都是一个功能一个jar,做项目的时候拉进去,这样对于我来说依然还是比较麻烦。最后就导致我把所有的jar做成了一个工具集合包。
有很多框架都含有这个工具集合里的功能,这些不一定都好用,因为这是根据我个人使用喜欢来实现的,如果你们有自己的想法,可以自己把架包解压了以后,源码拉出来改动下。
目前很多框架都用到了注解,除了androidannotations没有入侵我们应用的代码以外,其他的基本上都有,要么是必须继承框架里面的activity,要么是必须在activity的oncreat里面调用某个方法。
整个框架式不同于androidannotations,Roboguice等ioc框架,这是一个类似spring的实现方式。在整应用的生命周期中找到切入点,然后对activity的生命周期进行拦截,然后插入自己的功能。
五、 KJFrameForAndroid
KJFrameForAndroid 又叫KJLibrary,是一个android的orm 和 ioc
框架。同时封装了android中的Bitmap与Http操作的框架,使其更加简单易用;
KJFrameForAndroid的设计思想是通过封装Android原生SDK中复杂的复杂操作而达到简化Android应用级开发,最终实现快速而又安全的开发APP。我们提倡用最少的代码,完成最多的操作,用最高的效率,完成最复杂的功能。
功能:
一个android的orm 和 ioc 框架。同时封装了android中的Bitmap与Http操作的框架,使其更加简单易用;
KJFrameForAndroid开发框架的设计思想是通过封装Android原生SDK中复杂的复杂操作而达到简化Android应用级开发,最终实现快速而又安全的开发APP。总共分为五大模块:UILibrary,UtilsLibrary,HttpLibrary,BitmapLibrary,DBLibrary。
六、 dhroid
dhroid 是基于android 平台,
极速开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展.使你更快,更好的开发商业级别应用
功能:
1.Ioc容器: (用过spring的都知道)视图注入,对象注入,接口注入,解决类依赖关系
2.Eventbus: android平台事件总线框架,独创延时事件,事件管理轻松
3.Dhnet: 网络http请求的解决方案,使用简单,减少代码,自带多种网络访问缓存策略
4.adapter模块: 数据绑定轻松,不用写多余的adapter,天生网络支持(一行代码搞定加载,刷新问题)
5.DhDb: android中sqlite的最轻量orm框架(增删改查轻松搞定)
6.Perference: android自带Perference 升级版,让你的Perference更强大,更方便
工具集合 JSONUtil(安全处理json),ViewUtil(数据绑定更快) ThreadWorker(异步任务工具)...
七、 SmartAndroid
SmartAndroid是一套给
Android开发者使用的应用程序开发框架和工具包。它提供一套丰富的标准库以及简单的接口和逻辑结构,其目的是使开发人员更快速地进行项目开发。使用
SmartAndroid可以减少代码的编写量,并将你的精力投入到项目的创造性开发上。
功能:
SmartAndroid 拥有全范围的类库,可以完成大多数通常需要的APP开发任务,包括:
异步网络操作相关所有功能、强大的图片处理操作、轻量级ORM数据库Sqlite库、zip操作
、动画特效、Html等解析采集、事件总线EventBus/Otto、Gson(Json)、AQuery、主流所有UI控件(例如:ActionbarSherlock,SlidingMenu,BottomView,Actionbar,DragListView等10多种UI库)等。
关于手机服务器开发架构和安卓服务器端开发的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
广告位 后台主题配置管理 |
广告位 后台主题配置管理 |