什么时候使用BS,什么时候使用CS?
一、先说应用场景,再实际推导比较。 可以清楚地掌握。
例如,现在有一个用wpf技术编写的CS结构的. Net程序。 其3D效果非常好,但是即使转换为BS结构进行书写,也能得到这样完美的视觉效果和良好的相互作用和性能吗?
CS结构变为web的BS结构。 我担心的有三点:
1浏览器资源回收慢,性能差
2无状态,例如F5刷新。 的变量等很难共享并保持。
用. Net的WPF实现3 CS结构的接口很酷,有3D效果。 但是,转向java web开发,这个效果能实现吗?
是否有成熟的开源框架和资源?
二、说C/S和B/S的区别。
C/S是客户端-服务器; B/S是浏览器服务器
CS是胖客户端,BS是瘦客户端。
CS是长连接,客户端和服务端双向通信; BS是无状态的短连接,是“查询”式的通信。 只有在客户端询问服务器时,服务器才能向客户端发送信息。
服务器无法主动向客户端发送信息。 当然也可以通过网络套接字进行长时间的通信。 简而言之,C/S是双向通信,B/S是一问一答。
应用实例: webqq为BS结构,qq为CS结构。
看本质:
c=客户端,s=服务器。 C/S体系结构是“客户端/服务器”体系结构。 这里的“客户端”可以是具有图形用户界面(GUI )的定制软件,可以是浏览器,也可以是通过SSH访问服务器的命令行脚本。 只要客户端访问服务器并调用计算或存储资源,所有这些都是C/S体系结构。
所谓的浏览器服务器体系结构是C/S体系结构的特殊实现形式,而不是其对立面。
CS结构有三层沟通在一台电脑上,一个数据流几乎没有限制,所以最好在自己的大脑里明确分为三层。 这样写的程序除了更好的维护外,还可以给初学者写重复较少的代码。 总之,别忘了,所有这样的逻辑都不会写Swing类中积累的坏程序。 写CS可以精通线程和套接字编程,也是很好的训练。 学习Java的时候,写过微博的客户端。 为了练习还体验了SDK编程,很有成就感。
如果是BS的话,要经常记住那时的网站。 如果不太求解,则继承Model - Java类、处理控制器- http请求的类和View - JSP。 这样没错。 因为B/S体系结构可以使10万个用户在线,而不需要将用户分隔为不同地区的不同服务。
从cs到bs的迁移有什么区别和区别? 比较双向通信、性能、接口效果等
CS需要安装客户端,升级、处理问题、非常麻烦,但本地运算和文件处理等效率高,BS不需要安装客户端,而是通过浏览器访问和操作,因此客户端
大多数主流程功能应该可以完成,但对话肯定还是CS比较好。 只是在本地运行,依靠操作系统。
第一个问题,不用太担心。 浏览器这个需要关心的只有匹配问题。 多版本多类型浏览器的匹配必须根据需要进行
第二个问题可以通过缓存等方法解决。 在刷新按钮上提供缓存服务,将数据放入缓存中。 如果用户必须使用F5或CRT,即使是上帝也无能为力。
通过将状态信息保存在redis中,服务器可以使用会话id查询上下文信息,并且客户端可以在每次请求时携带会话id
第三个问题,确实有一些区别。 现在HTML5技术有了很大的发展,效果会比以前好很多。 虽然可以旋转360度,进行多角度展示,但是我认为与CS相比,CS的效果更丰富。 如果BS一定想实现那个效果的话,可以考虑用闪存来做。 flash基本上什么都可以做,但第一次加载页面需要时间
三、最后阐述CS程序转移到BS时的注意事项。
通信协议不同,框架体系不同。 业务逻辑不能更改。 请清楚以前的通信协议,注意有无上下文依存。
bs框架将通信协议全部交给http来解决,所以不需要在意通信和tcp分组的分组分解的问题。 好的bs结构应该是无状态的,这很容易扩展。
例如,通过将状态信息存储在redis中,服务器可以使用会话id查询上下文信息,并且客户端可以在每次请求时携带会话id。
通常,诸如token之类的服务也可以处理会话id的该请求,并从token获得上下文。
的问题是前端专业,现在的js也是nx,有pgdddn就没问题了。 在html5的新技术应用中加入JS,可以充分达到酷炫的效果。
bs体系结构的问题大部分是服务器性能的问题。 浏览器的问题是尽可能地应对。
如果浏览器较慢,请检查正在使用的框架是否过大、页面是否较大、是否加载了很多无用的资源以及网络请求时间是否足够快
Net开发,用C#编写的部分班级可以通用化。 用java写的话必须全部改变。 而且,那些酷酷的3d效果,不知道是否有开源。
语言不是问题。 bs主要是服务器端语言,客户端也是一样。 长期来看,倾向于有很多java、免费、开源的系统和计划。 Net的主要问题是收费,使用它,必须购买Windows操作系统,必须购买相应的数据库和开发工具,该套开源少,整体不开放。
除了使用. Net的企业、微软之外,国内很少有NB的企业也决定了很少有NB的. Net开发者。