自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Java領(lǐng)域從傳統(tǒng)行業(yè)向互聯(lián)網(wǎng)轉(zhuǎn)型你必須知道的那些事兒

開發(fā) 開發(fā)工具
在傳統(tǒng)行業(yè),相信你一定用過JMS,作為J2EE規(guī)范的一部分,所有的Aappserver(Weblogic、Websphere、Jboss等)都有JMS的實(shí)現(xiàn),那你一定知道JMS包含Queue和Topic兩種Subject,你也知道Send/Receive和Publish/Subscribe兩種收發(fā)模式,那在互聯(lián)網(wǎng)為什么就不用這些呢?

我為什么要寫這篇文章

武林中,"天下武功出少林"指各門各派的武功都與少林武學(xué)有一定的淵源,技術(shù)也是相同的道理,對(duì)于Java領(lǐng)域的應(yīng)用而言,傳統(tǒng)行業(yè)與互聯(lián)網(wǎng)行業(yè)的技術(shù)都來自J2SE和J2EE的生態(tài)圈,但是兩個(gè)行業(yè)的側(cè)重點(diǎn)不同,傳統(tǒng)行業(yè)側(cè)重于嚴(yán)格的規(guī)范、復(fù)雜的流程、豐富的功能,因此或多或少的都會(huì)使用J2EE規(guī)范定義的技術(shù),Appserver是J2EE規(guī)范的完全實(shí)現(xiàn),因此,傳統(tǒng)行業(yè)的企業(yè)級(jí)軟件開發(fā)基本都是部署在Appserver上的,這樣可以重復(fù)利用Appserver提供的通用功能而節(jié)省開發(fā)和實(shí)現(xiàn)的工作量,而后者更注重互聯(lián)網(wǎng)產(chǎn)品的非功能質(zhì)量需求,通常包括:高可用、高性能、安全性、可伸縮、可擴(kuò)展等,互聯(lián)中***的一句話是:天線武功唯"快"而不破,充分看出互聯(lián)網(wǎng)企業(yè)里程序性能的重要性,為了達(dá)到較好的性能,高度抽象的J2EE技術(shù)已經(jīng)沒法滿足需求,因此互聯(lián)網(wǎng)技術(shù)更傾向于在簡單的J2SE上發(fā)展具有互聯(lián)網(wǎng)特色的技術(shù)棧,重新定義互聯(lián)網(wǎng)級(jí)的開發(fā)工具、平臺(tái)和技術(shù)棧。

由于筆者從傳統(tǒng)的外企轉(zhuǎn)型到互聯(lián)網(wǎng)已經(jīng)有3個(gè)年頭,近兩年來面試了很多來自傳統(tǒng)行業(yè)的同行們,筆者發(fā)現(xiàn)這些同行們都有意向走進(jìn)處于風(fēng)口的互聯(lián)網(wǎng),但是由于傳統(tǒng)行業(yè)使用的技術(shù)棧與互聯(lián)網(wǎng)有所不同,不知從哪里開始入手準(zhǔn)備和提高,盡管他們有強(qiáng)烈的學(xué)習(xí)和提高的愿望,本文就是給這些想從傳統(tǒng)行業(yè)跨入互聯(lián)網(wǎng)的小伙伴們準(zhǔn)備的一篇導(dǎo)向性文章,幫助讀者了解互聯(lián)網(wǎng)的技術(shù)棧、了解互聯(lián)網(wǎng)的側(cè)重點(diǎn)、了解互聯(lián)網(wǎng)的核心技術(shù),并給出如何以傳統(tǒng)行業(yè)的技術(shù)棧為基礎(chǔ)快速掌握互聯(lián)網(wǎng)的核心技術(shù),其實(shí),那只有一墻之隔,捅破那張窗戶紙兒,一切都豁然開朗。

這里需要再次澄清,我并不認(rèn)為互聯(lián)網(wǎng)行業(yè)的技術(shù)要比傳統(tǒng)技術(shù)深?yuàn)W多少,這些技術(shù)跑不出J2SE和J2EE的生態(tài)圈,只不過高度抽象的J2EE技術(shù)由于性能上的局限性而被互聯(lián)網(wǎng)撇棄而已,但是不得不承認(rèn)的是兩個(gè)行業(yè)的側(cè)重點(diǎn)不同,傳統(tǒng)行業(yè)側(cè)重于規(guī)范,流程,功能的復(fù)雜性以及正確性,而互聯(lián)網(wǎng)更側(cè)重于“快”,這里的“快”有兩方面的意思,一個(gè)是產(chǎn)品運(yùn)行效率要高,響應(yīng)速度要快,另外一個(gè)是開發(fā)效率要快,響應(yīng)市場(chǎng)需求要快。從另外一個(gè)側(cè)面說,傳統(tǒng)行業(yè)一般關(guān)注一個(gè)復(fù)雜系統(tǒng)的功能完善和豐富,而互聯(lián)網(wǎng)企業(yè)更關(guān)注一個(gè)簡單的垂直業(yè)務(wù)的非功能質(zhì)量,例如:高性能,可用性,高并發(fā),可擴(kuò)展,可伸縮,安全性等,那么,一個(gè)從業(yè)人員從傳統(tǒng)行業(yè)到互聯(lián)網(wǎng)行業(yè),你到底還有多少距離?

小伙伴們從哪里開始入手互聯(lián)網(wǎng)

這兩年來面試下來看到了一個(gè)普遍的現(xiàn)象,來自于傳統(tǒng)行業(yè)的技術(shù)人員,他們大多數(shù)掌握的技能是SSH,稍微資深一點(diǎn)的工程師對(duì)J2EE規(guī)范有所了解,他們?nèi)匀辉谑褂肑2EE規(guī)范的EJB, JPA, JMS, JCA, JAAS等技術(shù),數(shù)據(jù)庫基本上使用Oracle,DB2,Sqlserver等等。傳統(tǒng)行業(yè)的開發(fā)人員基本實(shí)施“模塊包攬制”,這得益于J2EE規(guī)范的完整性,以及Appserver提供了基本所有架構(gòu)需要的功能,開發(fā)人員只需要將各個(gè)業(yè)務(wù)模塊填入J2EE和Appserver提供給你的框架即可,因此,一個(gè)傳統(tǒng)的開發(fā)人員會(huì)包攬一個(gè)模塊從前臺(tái)到后臺(tái)所有的工作,這包括:HTML, JS, CSS, EJB, JPA, SQL, PLSQL等等。這些技術(shù)是不是一無是處,當(dāng)然不是,反而是非常有價(jià)值的,那有了這些技術(shù),我們是否可以一步跨入互聯(lián)網(wǎng),也不是,還需要以這些技術(shù)為基礎(chǔ),進(jìn)一步擴(kuò)展技術(shù)視野,對(duì)欠缺的技術(shù)廣度和深度進(jìn)行不足。

下面就學(xué)習(xí)傳統(tǒng)行業(yè)技術(shù)人員擁有哪些技術(shù)積累,下一步又如何補(bǔ)充自己的知識(shí)面,成為能夠勝任互聯(lián)網(wǎng)行業(yè)的優(yōu)秀技術(shù)人員呢?

消息隊(duì)列

在傳統(tǒng)行業(yè),相信你一定用過JMS,作為J2EE規(guī)范的一部分,所有的Aappserver(Weblogic、Websphere、Jboss等)都有JMS的實(shí)現(xiàn),那你一定知道JMS包含Queue和Topic兩種Subject,你也知道Send/Receive和Publish/Subscribe兩種收發(fā)模式,那在互聯(lián)網(wǎng)為什么就不用這些呢?

原因主要有兩個(gè),一個(gè)是商業(yè)的Appserver都是收費(fèi)的,然而,互聯(lián)網(wǎng)提供的產(chǎn)品是免費(fèi)的,互聯(lián)網(wǎng)使用的產(chǎn)品也多是免費(fèi)的,另外一個(gè)原因就是這些Appserver的實(shí)現(xiàn)性能差,有測(cè)評(píng)顯示ActiveMQ比JbossMQ速度要高出10倍,在某些應(yīng)用場(chǎng)景下ZeroMQ的速度要高出一個(gè)數(shù)量級(jí),可達(dá)到微妙級(jí)別的延遲,有興趣可以參考ZeroMQ的性能測(cè)試頁面。

除此之外,一些開源的MQ的實(shí)現(xiàn)針對(duì)互聯(lián)網(wǎng)業(yè)務(wù),提供了除Queue和Topic的支持,還有partition,group,broker等更復(fù)雜的消息模型,具體參考Kafka, Kafka的設(shè)計(jì)具有使用簡單、功能豐富、高性能等優(yōu)點(diǎn),不但天生具有持久、分片、復(fù)制等功能,而且在使用上對(duì)開發(fā)者和運(yùn)維的體驗(yàn)也很好。對(duì)于Kafka的中間件設(shè)計(jì),請(qǐng)參考我的博客文章簡單易用的消息隊(duì)列框架的設(shè)計(jì)與實(shí)現(xiàn)。

那么如果你在傳統(tǒng)行業(yè)掌握了JMS規(guī)范定義的消息隊(duì)列技術(shù),你只需要再往前走一步,請(qǐng)深入學(xué)習(xí)開源的Kafka、RockitMQ、ActiveMQ、RabbitMQ、MemcacheQ、Redis、ZeroMQ、MSQ等。

緩存

在傳統(tǒng)行業(yè),相信大家都用過Oscache和Ehcache, 前者主要針對(duì)網(wǎng)頁的緩存,后者主要針對(duì)數(shù)據(jù)庫數(shù)據(jù)的緩存,通??勺鳛镠ibernate的二級(jí)緩存,相信有些人還用過Jboss Cache,這是一個(gè)分布式企業(yè)級(jí)可實(shí)時(shí)復(fù)制的Cache,有些人在項(xiàng)目中也寫了自己的緩存,甚至在一些項(xiàng)目中直接使用Hashtable作為緩存,其實(shí)這些緩存加速了特定場(chǎng)景下的數(shù)據(jù)訪問,對(duì)你的項(xiàng)目成功起到了至關(guān)重要的作用。

但是互聯(lián)網(wǎng)行業(yè)則從另外一個(gè)角度來使用緩存,主要應(yīng)用場(chǎng)景有兩個(gè):***,大量的數(shù)據(jù)需要集中保存,在服務(wù)的任意節(jié)點(diǎn)上可以訪問緩存中的任意數(shù)據(jù),也就是需要數(shù)據(jù)的中心存儲(chǔ),而且還要滿足快速的查詢需求的場(chǎng)景;第二,數(shù)據(jù)庫讀性能是有瓶頸的,廉價(jià)硬件機(jī)器上的單機(jī)Mysql讀操作吞吐量在1000/s左右,大量的讀查詢會(huì)壓垮數(shù)據(jù)庫,這需要使用緩存來抗住讀流量,通常應(yīng)用在有熱點(diǎn)數(shù)據(jù)的場(chǎng)景。

從這兩個(gè)應(yīng)用場(chǎng)景來看,互聯(lián)網(wǎng)行業(yè)更關(guān)心分布式緩存,那數(shù)據(jù)如何分布呢?很簡單,Hash或者一致性Hash,所以,咱們可不可以先把Oscache和Ehcache放一邊,來研究一下Redis,Memcache或者淘寶的Tair呢?最簡單的辦法從Redis和Memcache的區(qū)別開始入手?

除了要學(xué)習(xí)分布式緩存,例如:Redis、Memcache本身的功能和技術(shù)點(diǎn)外,最主要的要有緩存分片的思想,在互聯(lián)網(wǎng)里大多數(shù)的熱數(shù)據(jù)都是緩存在緩存服務(wù)中的,這需要大量的緩存服務(wù)器,單臺(tái)機(jī)器是不能滿足需求的,那緩存分片是一個(gè)大話題,緩存分片的實(shí)現(xiàn)方式一般有如下3種:

  • 通過代理層實(shí)現(xiàn),例如Codis,在代理層實(shí)現(xiàn)數(shù)據(jù)的路由,對(duì)應(yīng)用層透明。
  • 客戶端分片,可參考我的開源項(xiàng)目redic,實(shí)現(xiàn)簡單、使用簡單、支持分片、復(fù)制、失效轉(zhuǎn)移等功能。
  • 緩存服務(wù)器支持的高可用模式,例如:Redis 3.x、Sentinel等。

服務(wù)框架

在傳統(tǒng)行業(yè),相信大家都使用EJB和Webservice來提供服務(wù)的導(dǎo)出和導(dǎo)入,有些個(gè)別傳統(tǒng)行業(yè)不用APP服務(wù)器,僅僅使用JDK的RMI來導(dǎo)出和導(dǎo)入服務(wù),但是為什么互聯(lián)網(wǎng)偏偏不喜歡這些技術(shù)呢?Webservice使用重量級(jí)的SOAP協(xié)議,臃腫的XML滿世界都是,性能上的去嗎? 那互聯(lián)網(wǎng)用什么,互聯(lián)網(wǎng)使用輕量級(jí)的RPC框架和RESTful服務(wù),前者使用輕量級(jí)的序列化框架,例如:Google的ProtoBuffer, 還有Hessian和Burlap等序列化協(xié)議,后者則使用簡單的HTTP協(xié)議,前者適合在內(nèi)網(wǎng)做高性能的服務(wù)調(diào)用,而后者適合異構(gòu)平臺(tái)的服務(wù)調(diào)用,例如: 跨語言,跨防火墻,前后臺(tái)之間等。RPC遠(yuǎn)程調(diào)用請(qǐng)參考阿里的Dubbo框架和Twitter的Finagle框架,至于Rest框架參請(qǐng)考Spring Web MVC,Spring Boot、Jersey,Apache CXF等。

在互聯(lián)網(wǎng)的世界里,幾乎所有的公司都實(shí)現(xiàn)了服務(wù)化,服務(wù)化導(dǎo)致的問題就是一致性問題,如何解決高并發(fā)系統(tǒng)的一致性呢?使用兩階段提交協(xié)議、三階段提交協(xié)議、TCC?還是遵循ACID原理、CAP原理、BASE原理?如果我們保證的是最終一致性模型,我們都有哪些模式可以應(yīng)用。

最近微服務(wù)變得越來越流行,微服務(wù)實(shí)際上是服務(wù)化的一個(gè)延續(xù),是更細(xì)致化的服務(wù)化的架構(gòu),微服務(wù)的服務(wù)框架的代表是Spring Cloud,它與Netflix集成,提供了限流、熔斷、倉壁隔離、失效轉(zhuǎn)移等為服務(wù)化中必不可少的高級(jí)特性,大家可以到官網(wǎng)文檔進(jìn)一步學(xué)習(xí)Spring Cloud相關(guān)技術(shù)。

數(shù)據(jù)庫

在傳統(tǒng)行業(yè),大多數(shù)人開發(fā)人員都使用Oracle, DB2, Sqlserver數(shù)據(jù)庫,其實(shí),從功能和性能上來講,他們都不亞于Mysql, 甚至比Mysql更優(yōu)秀,但是Mysql是免費(fèi)的,這使得Mysql得到互聯(lián)網(wǎng)行業(yè)的青睞。

那么我們分析下,傳統(tǒng)行業(yè)的人員在數(shù)據(jù)庫方面欠缺什么嗎?首先,Oracle和Mysql都使用B+樹索引,原理相同,使用方法相同;Oracle支持行級(jí)鎖,Mysql Innodb同樣支持行級(jí)鎖;Oracle Dataguard支持?jǐn)?shù)據(jù)復(fù)制,Mysql也支持?jǐn)?shù)據(jù)復(fù)制,但是Mysql的復(fù)制模式更靈活,并且支持主主配置。前面這些都是大同小異,如果你理解了相應(yīng)的Oracle技術(shù),你用很少的時(shí)間就可以掌握Mysql的相關(guān)技術(shù)。但是不同點(diǎn)是,Oracle雖然支持集群,通過增加服務(wù)節(jié)點(diǎn)的方式可以增加服務(wù)性能,但是集群的節(jié)點(diǎn)數(shù)量是有限的,并且數(shù)據(jù)存儲(chǔ)是共享的,所以擴(kuò)容基本采用垂直方式,然而使用Mysql則采用水平擴(kuò)展,也就是需要進(jìn)行手工的分區(qū)分表,對(duì)數(shù)據(jù)進(jìn)行分而治之,以滿足日益增長的讀寫壓力以及數(shù)據(jù)存儲(chǔ)壓力。因此,如果想向互聯(lián)網(wǎng)轉(zhuǎn)行,一定要學(xué)好Mysql,推薦閱讀《高性能Mysql》,這本書是必讀的書籍,而且推薦每一個(gè)應(yīng)用開發(fā)人員都要通讀全書,而不是僅僅讀其中與應(yīng)用相關(guān)的那部分。

在互聯(lián)網(wǎng)行業(yè)里面對(duì)性能追求到達(dá)了***,因此會(huì)要求開發(fā)人員對(duì)數(shù)據(jù)庫原理有所了解,其中最重要的部分就是索引。

負(fù)載均衡

剛才談到,高并發(fā)系統(tǒng),壓力山大的時(shí)候怎么辦?思想只有一個(gè)分而治之( divide-and-conquer)。因此,負(fù)載均衡則非常重要,傳統(tǒng)行業(yè)以銷售產(chǎn)品為盈利模式,因此,大多數(shù)項(xiàng)目在需要負(fù)載均衡的時(shí)候,多使用F5硬件負(fù)載均衡。

實(shí)際上傳統(tǒng)的J2EE規(guī)范的EJB也可以分布式發(fā)布,通過JNDI的集成,也可以進(jìn)行一定程度的負(fù)載均衡,但是這個(gè)負(fù)載均衡顯得太重量級(jí),用起來非常的不方便,效率也很低,并且和APP服務(wù)器綁定。

那么互聯(lián)網(wǎng)呢?多采用軟負(fù)載均衡,你必須了解LVS,nginx, Apache, Varnish, Haproxy等七層和三四層負(fù)載均衡原理和產(chǎn)品。

JVM

另外,在互聯(lián)網(wǎng)行業(yè)做Java開發(fā),一定要對(duì)JVM有所了解,并且進(jìn)行深入的研究,例如:GC,類加載,Hotspot編譯器,多線程、并發(fā)和鎖,IO和NIO等。推薦閱讀《深入理解Java虛擬機(jī)++JVM高級(jí)特性與***實(shí)踐》,《深入理解Java7》,《Java Concurrency In Practice》,《Pro Java 7 NIO.2》,《Java Performance》等一系列深層次的JVM相關(guān)數(shù)據(jù),***能閱讀《The Java® Language Specification》和《The Java® Virtual Machine Specification》兩本龍書。

大數(shù)據(jù)與云計(jì)算

作為一個(gè)IT從業(yè)人員,一定要跟上技術(shù)潮流,像云計(jì)算,大數(shù)據(jù),CAP, BASE, 選主算法等概念不得不去了解,對(duì)于熱點(diǎn)技術(shù)不得不研究,例如: Hadoop, Hbase, Zookeeper, Openstack, Dooker, Kafka, Storm等。

性能評(píng)估和容量估算

如果你決定要來互聯(lián)網(wǎng)一顯身手,你必須學(xué)會(huì)性能評(píng)估和容量估算,這包括對(duì)前端機(jī)、緩存、消息隊(duì)列、數(shù)據(jù)庫等各個(gè)性能指標(biāo)的估算,例如:吞吞量,響應(yīng)時(shí)間,內(nèi)存,CPU,IO,網(wǎng)絡(luò)IO等。

性能和容量評(píng)估的方法論和典型案例可參考文章互聯(lián)網(wǎng)性能與容量評(píng)估的方法論和典型案例。

為了確保架構(gòu)設(shè)計(jì)的合理性,性能和容量評(píng)估是在架構(gòu)設(shè)計(jì)初期完成的,用來證明架構(gòu)方案可行,但是在項(xiàng)目實(shí)施中和實(shí)施后,還需要對(duì)項(xiàng)目的進(jìn)行壓測(cè),來證明項(xiàng)目按照既定的目標(biāo)而推薦和完成,關(guān)于性能測(cè)試的方法論和設(shè)計(jì)流程,我將會(huì)在后續(xù)文章中介紹給讀者。

互聯(lián)網(wǎng)架構(gòu)方法論

在互聯(lián)網(wǎng)行業(yè)里,處理大規(guī)模高并發(fā)的用戶請(qǐng)求的核心思想只有一個(gè),那就是“分而治之”,因此,通常業(yè)務(wù)被拆分為多個(gè)職責(zé)單一的服務(wù),在某一個(gè)單服務(wù)里,業(yè)務(wù)邏輯并不復(fù)雜,但是對(duì)非功能質(zhì)量需求的要求較高,這通常表現(xiàn)在性能、可用性等方面,因此互聯(lián)網(wǎng)的架構(gòu)設(shè)計(jì)中首要考慮的是非功能質(zhì)量,這和傳統(tǒng)行業(yè)注重功能和業(yè)務(wù)流程的情況有所不同,對(duì)于互聯(lián)網(wǎng)行業(yè)中,架構(gòu)設(shè)計(jì)的案例,可以參考發(fā)號(hào)器Vesta的設(shè)計(jì)與實(shí)現(xiàn)如何設(shè)計(jì)一款多場(chǎng)景分布式發(fā)號(hào)器(Vesta),來了解互聯(lián)網(wǎng)業(yè)務(wù)的架構(gòu)設(shè)計(jì)的風(fēng)格和思路。

技術(shù)攻關(guān)和線上應(yīng)急

在互聯(lián)網(wǎng)企業(yè)里,大多數(shù)產(chǎn)品都是針對(duì)用戶端的,用戶端的產(chǎn)品的特點(diǎn)是擁有海量的用戶、產(chǎn)品要能夠處理海量用戶產(chǎn)生的大規(guī)模高并發(fā)的用戶請(qǐng)求,因此會(huì)對(duì)產(chǎn)品的可用性比較敏感,在這種環(huán)境下,技術(shù)攻關(guān)和線上應(yīng)急顯得尤為重要,例如:如何解決線上線程卡死問題、如何解決OOM問題、如何解決服務(wù)超時(shí)問題等,可以參考如下兩篇文章:Java服務(wù)化系統(tǒng)線上應(yīng)急和技術(shù)攻關(guān),你必須掌握的Linux命令Java服務(wù)化系統(tǒng)線上應(yīng)急和技術(shù)攻關(guān),你必須擁有的那些應(yīng)用層腳本和Java虛擬機(jī)命令。

向這里看你會(huì)豁然開朗

希望這篇文章能夠幫助更多的傳統(tǒng)行業(yè)的從業(yè)人員轉(zhuǎn)入互聯(lián)網(wǎng),在互聯(lián)網(wǎng)的大舞臺(tái)上展現(xiàn)你的才能,***,附贈(zèng)一張筆者在互聯(lián)網(wǎng)行業(yè)里通過面試識(shí)別人才的《Java技能圖譜》,大家可以根據(jù)其中的思維導(dǎo)圖來深入學(xué)習(xí)各項(xiàng)知識(shí)點(diǎn),每個(gè)知識(shí)點(diǎn)都需要系統(tǒng)的學(xué)習(xí),或者看一本書或者查詢相關(guān)的資料,切記要積累知識(shí)的廣度的同事也要有一定的深度。

Java秘籍圖譜

點(diǎn)擊《Java領(lǐng)域從傳統(tǒng)行業(yè)向互聯(lián)網(wǎng)轉(zhuǎn)型你必須知道的那些事兒》閱讀原文。

【本文為51CTO專欄作者“李艷鵬”的原創(chuàng)稿件,轉(zhuǎn)載可通過作者簡書號(hào)(李艷鵬)或51CTO專欄獲取聯(lián)系】

戳這里,看該作者更多好文

責(zé)任編輯:武曉燕 來源: 51CTO專欄
相關(guān)推薦

2016-03-15 22:35:50

漏洞智能設(shè)備安全網(wǎng)店刷單

2014-08-26 10:30:45

Linux

2013-01-18 09:26:58

2019-05-30 08:25:50

5G4G網(wǎng)絡(luò)

2012-02-08 09:44:05

ChromeAndroid

2021-10-12 13:52:59

量子互聯(lián)網(wǎng)網(wǎng)絡(luò)技術(shù)量子密鑰

2015-07-21 17:19:55

用友iUAP

2021-03-02 11:06:17

工業(yè)互聯(lián)網(wǎng)

2015-10-27 10:22:47

Html5API調(diào)用

2017-01-22 10:10:29

2010-04-12 14:58:56

Meego開發(fā)

2014-09-01 15:39:16

傳統(tǒng)企業(yè)轉(zhuǎn)型

2015-06-25 10:14:13

互聯(lián)網(wǎng)+傳統(tǒng)企業(yè)

2015-06-11 16:48:46

2013-12-30 09:19:52

2011-07-22 17:21:55

戴爾

2012-09-24 16:28:16

Google

2011-11-29 15:32:11

2016-07-04 13:56:25

互聯(lián)網(wǎng)+政務(wù)互聯(lián)網(wǎng)大會(huì)

2018-01-17 22:11:54

數(shù)字化轉(zhuǎn)型人工智能互聯(lián)網(wǎng)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)