您的位置:首页 > 其它

.NET在国内外应用的具体实例

2017-03-27 17:20 183 查看

1.概述

1.1 应用场景

从平台的角度上讲,在Windows平台上.Net CLR比Java的JRE速度快, CLR速度足够快的话,C#字节码运行起来,普通应用就不会感觉出来速度比纯本地代码慢。基本上感觉不出来CLR启动和加载程序集的明显延迟,而不管用AWT,Swing还是SWT,JVM启动和加载类库的延迟是非常明显的,因此 .NET CLR的运行效率比JVM高。

从企业开发的角度上讲,C#需要SQL Server(Oracle也可以,但是不如SQL Server方便),IIS和MTS的配合,Java需要DB,App Server的配合。由于C#只管SQL Server和IIS,甚至只管IE浏览器,所以Visual .Net Studio可以做的很方便,整个开发过程一体化,不用考虑其它的实现,十分方便,因此.NET也大量的应用在企业开发上。

2. .NET 在移动平台的应用

2.1 现状

根据最新统计显示,国内53.1%的人使用Unity3D进行游戏开发,有80%的手机游戏使用Unity3D开发,跨多平台(IOS、Android、Windows

Phone、Windows、Flash、XBOX360、PS3、Wii等)游戏引擎,可以开发2D、2.5D、3D游戏。appstore手机上有1500 款用Unity3D开发的游戏,Unity3D《神庙逃亡2》再续前缘更是荣登APP免费榜第一名,而Unity3D语言就是C#。

使用.Net开发的著名游戏:

《神庙逃亡》2013年苹果手机下载增长最快的游戏

《王者之剑》 月进账超过2000万元的国产手机游戏

《仙剑》

《绝代双骄》

《蒸汽之城》

《天神传》

可以直观的看出,.Net的未来,也不容小觑,它正在向顶尖,慢慢的行进

2.2 优势

.NET是 Microsoft XML Web services 平台。XML Web services 允许应用程序通过 Internet 进行通讯和共享数据,而不管所采用的是哪种操作系统、设备或编程语言。.NET通用于(Universal)Windows App的开发了。

所谓Universal Windows App(简称UWP),就是开发一次,可以运行于所有以Windows 10为内核的系统和设备上,包括:桌面设备、移动设备、XBox、HoloLens甚至物联网设备。虽然UWP的字面意思很直接的表达了其本质(一次开发编译多个地方运行),不过它还有如下特点:

1.充分利用了.NET Core的跨平台特性,可以共享业务逻辑代码,会同应用一起部署一个缩减后的.NET副本,以便应用总是使用经过验证的.NET版本。

2.利用.NET Native技术,生成高度优化的原生机器代码,带来启动时间提高,功耗降低,性能加快的优势。

3.UWP应用可以非常方便的通过Windows应用商店来购买、安装和升级。能够和Application Insight(微软出品的应用程序监控服务)集成,对应用的运行情况进行详细度量和分析。

3. .NET在网站开发的应用

3.1 现状

很多人在谈到.Net的时候都会说“.Net不能做大型网站的开发”,其实这是一个非常大的误解,很多人只会使用.Net中提供的内置的组件,这些组件是为了普通网站的开发而设置的,但并不适合于大型的网站的架构。

大型系统不可能一切都是使用内置的简单架构能够完成的,大型的系统都需要根据不同项目的不同需求来科学的搭配不同的产品、组件形成项目的基础架构,这就是技术架构师要完成的工作,以Java为例,JSP中内置的Session也不适合于大型网站架构,因此很多大型网站都采用Memcached等来实现Session。Memcached 是一个开源的高性能分布式缓存系统,百度、淘宝、天涯、迅雷等大型的网站架构中都有使用Memcached。

3.2 案例

.Net开发的部分知名网站:

http://www.godaddy.com 全球最大域名注册商

http://www.ips.com 环迅支付,国内最早的在线支付平台

http://www.icbc.com.cn 中国工商银行

http://www.vancl.com 凡客诚品

http://www.m18.com 趣天麦网,全球最大的中文女性网上购物网站

http://www.newegg.com 新蛋网,美国规模最大的IT数码网上零售商

http://www.letao.com 乐淘网,中国主要的运动鞋、皮鞋零售网站

http://www.3g.cn3 G中国,最大的专业化3G手机服务平台

http://www.eastmoney.com 东方财富网,创业板上市财经网站

http://www.MySpace.com 全球最大的在线交友平台

http://www.hujiang.com 沪江网,国内领先的外语互联网门户

http://www.bitauto.com 易车网,中国第一汽车消费门户

http://www.1hai.cn 一嗨租车,引领中国租车行业的连锁租车品牌

http://www.39.net 39健康网,中国领先的健康门户网站

http://www.jsj.com.cn 金色世纪商旅网,中国最大的高端商旅度假会员网站

http://www.ctrip.com 携程网

http://www.soufun.com 搜房网

http://www.match.com 世界最大婚恋网站

http://www.lotour.com 乐途旅游网,中国领先的旅游门户

http://www.cmbchina.com 招商银行

http://www.abchina.com 农业银行网银

http://www.dangdang.com 当当网

http://www.monster.com 世界最大招聘网站

http://www.seek.com 澳大利亚在线招聘巨头

http://www.expedia.com 世界最大旅游网站

http://www.zhaopin.com 智联招聘

http://www.chinahr.com 中华英才网

http://www.elong.com 艺龙网

http://www.sdo.com 盛大在线

http://www.qidian.com 起点中文网

http://www.hexun.com 和讯网 中国最大财经门户网站

3.3 一个.NET开发的具体例子-兰碧儿(NOEVIR)

日本兰碧儿(NOEVIR)只靠自己的信息系统部门就完成了Web代理店支援系统的从企划到编程的全部工作。日本一家系统集成商曾表示,此前导入Java系统的用户企业中“选用.NET的信息系统部门就有望自行开发或对系统进行修改”。

  笔者认为,由于Java本身较为复杂,且不易学习掌握,因此“用户企业只负责企划,而将编程工作完全委托给集成商的现象非常普遍”。 在COBOL和VB(客户商/服务器)的全盛时期,信息系统部门自己编程、对系统进行部分修改和功能追加是很正常的事情。如果连细小的系统修改都要外包,那么系统的维护成本自然会很高,因此就将失去灵活性,因此,.NET适合这种低门槛的快速开发的场景。

3.4 一个大型网站的应用-艺龙

3.4.1 艺龙简介

艺龙旅行网 (NASDAQ: LONG)是中国领先的在线旅行服务提供商之一,通过网站、24小时预订热线以及手机艺龙网三大平台,为消费者提供酒店、机票和度假等全方位的旅行产品预订服务。艺龙旅行网通过提供强大的地图搜索、酒店360度全景、国内外热点目的地指南和用户真实点评等在线服务,使用户可以在获取广泛信息的基础上做出旅行决定。

艺龙旅行网通过网站、24小时预订热线以及手机艺龙网、艺龙iPhone和Andriod无线客户端等平台,为消费者提供酒店、机票及旅行团购产品等预订服务。

3.4.2 架构介绍



3.4.3 运行环境

Windows Server, IIS, SQLServer, WCF, Remoting, MSMQ, CentOS, memcached, CDN VMWare ESX

3.4.4 开发环境

ASP.Net, C#

3.4.5 运营管理

Cacti, Whats Up, Tealeaf, BMC,Ominture, Network Bench

3.4.6 数据分析

Oracle, Hyperion, Informatica

3.4.7 艺龙简单的架构原则

1.子系统在服务层通过API交互

2.子系统可以独立扩展,升级,维护

3.面向运维的子系统设计

3.4.8 采用.NET平台优势

1、增强的性能。ASP.NET 是在服务器上运行的编译好的公共语言运行库代码。与被解释的前辈不同,ASP.NET 可利用早期绑定、实时编译、本机优化和盒外缓存服务。这相当于在编写代码行之前便显著提高了性能。

2、世界级的工具支持。ASP.NET 框架补充了 Visual Studio 集成开发环境中的大量工具箱和设计器。WYSIWYG 编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种。

3、威力和灵活性。由于 ASP.NET 基于公共语言运行库,因此 Web 应用程序开发人员可以利用整个平台的威力和灵活性。.NET 框架类库、消息处理和数据访问解决方案都可从 Web 无缝访问。ASP.NET 也与语言无关,所以可以选择最适合应用程序的语言,或跨多种语言分割应用程序。另外,公共语言运行库的交互性保证在迁移到 ASP.NET 时保留基于 COM 的开发中的现有投资。

4、简易性。ASP.NET 使执行常见任务变得容易,从简单的窗体提交和客户端身份验证到部署和站点配置。例如,ASP.NET 页框架使您可以生成将应用程序逻辑与表示代码清楚分开的用户界面,和在类似 Visual Basic 的简单窗体处理模型中处理事件。另外,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了开发。

5、可管理性。ASP.NET 采用基于文本的分层配置系统,简化了将设置应用于服务器环境和 Web 应用程序。由于配置信息是以纯文本形式存储的,因此可以在没有本地管理工具帮助的情况下应用新设置。此”零本地管理”哲学也扩展到了 ASP.NET 框架应用程序的部署。只需将必要的文件复制到服务器,即可将 ASP.NET 框架应用程序部署到服务器。不需要重新启动服务器,即使是在部署或替换运行的编译代码时。

6、可缩放性和可用性。ASP.NET 在设计时考虑了可缩放性,增加了专门用于在聚集环境和多处理器环境中提高性能的功能。另外,进程受到 ASP.NET 运行库的密切监视和管理,以便当进程行为不正常(泄漏、死锁)时,可就地创建新进程,以帮助保持应用程序始终可用于处理请求。

7、自定义性和扩展性。ASP.NET 随附了一个设计周到的结构,它使开发人员可以在适当的级别”插入”代码。实际上,可以用自己编写的自定义组件扩展或替换 ASP.NET 运行库的任何子组件。实现自定义身份验证或状态服务一直没有变得更容易。

8、安全性。借助内置的 Windows 身份验证和基于每个应用程序的配置,可以保证应用程序是安全的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: