亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

隨著微服務(wù)的流行,越來越多應(yīng)用采用微服務(wù)架構(gòu)開發(fā)。如何簡單高效地在微服務(wù)中完成數(shù)據(jù)處理成為大家不得不面對的問題。以往單體應(yīng)用架構(gòu)下,我們可以借助數(shù)據(jù)庫實(shí)施計算,SQL 是專用的集合計算語言,依托數(shù)據(jù)庫較強(qiáng)的計算能力可以比較方便地完成數(shù)據(jù)處理。但在微服務(wù)架構(gòu)下,為了方便服務(wù)擴(kuò)展和服務(wù)封裝,數(shù)據(jù)庫則主要承擔(dān)數(shù)據(jù)持久化任務(wù),數(shù)據(jù)處理都在應(yīng)用(服務(wù))端完成。

服務(wù)端完成數(shù)據(jù)處理的主要手段是采用 JAVA 硬編碼(也有其他高級語言,Java 使用更多)。由于應(yīng)用使用 Java 開發(fā),原生的 Java 代碼可以無縫融合到微服務(wù)中,加上 Java 支持過程可以分多步實(shí)施計算,而且在 Java8 以后引入了 Stream 特性后計算又方便不少。

不過,使用 Java 進(jìn)行數(shù)據(jù)處理距離 SQL 還有很大差距,同樣的分組匯總 SQL 實(shí)現(xiàn)很簡單,但 Java 卻要幾十行代碼,復(fù)雜計算二者的差距更明顯。根本原因是由于 Java 并非專用的集合運(yùn)算語言,也缺少相應(yīng)的結(jié)構(gòu)化數(shù)據(jù)計算類庫,導(dǎo)致代碼很長,微服務(wù)一點(diǎn)也不“微”。并且,Java 作為編譯型語言,很難直接實(shí)現(xiàn)熱切換,被迫使用 Docker 等沉重的機(jī)制,這對于頻繁變動的微服務(wù)來說十分不友好。魚與熊掌,要擁抱微服務(wù)就得忍受 Java 做數(shù)據(jù)處理的缺點(diǎn)。

一個理想的微服務(wù)數(shù)據(jù)處理組件應(yīng)該具備這樣一些特點(diǎn):

易于與微服務(wù)融合,可以無縫嵌入使用;計算能力強(qiáng)且實(shí)現(xiàn)簡單,可以方便地完成所有數(shù)據(jù)處理任務(wù);支持熱切換(熱部署),服務(wù)不停機(jī)運(yùn)維;體系開放,可以直接使用多種數(shù)據(jù)源。

開源集算器 SPL 的出現(xiàn)使得這些問題迎刃而解。

集算器 SPL 是一款開源數(shù)據(jù)處理引擎,不僅能與 Java 應(yīng)用(微服務(wù)框架)無縫集成,還提供了完備的計算能力,基于 SPL 語法實(shí)施計算的簡便性遠(yuǎn)超 Java(甚至 SQL),同時提供了熱切換與多源支持等特性,為微服務(wù)數(shù)據(jù)處理提供了新思路。

高開發(fā)效率

SPL 作為專業(yè)結(jié)構(gòu)化數(shù)據(jù)處理引擎提供了完備的計算能力。使得微服務(wù)中的任意結(jié)構(gòu)化數(shù)據(jù)處理工作都可以通過 SPL 實(shí)現(xiàn)。

SPL 不僅可以完成所有結(jié)構(gòu)化數(shù)據(jù)計算,實(shí)現(xiàn)上也很簡單。SPL 提供的敏捷語法實(shí)施計算的簡便性遠(yuǎn)超 Java。下面的例子可以感受到 SPL 的簡潔程度。

根據(jù)股票記錄表查詢股價連續(xù)上漲超過 5 天的股票及上漲天數(shù)(股價相等記為上漲)

  A  
1 =db.query@x("select * from stock_record order by ddate")  
2 =A1.group(code)  
3 =A2.new(code,~.group@i(price<price[-1]).max(~.len())-1:maxrisedays) 計算每只股票的連續(xù)上漲天數(shù)
4 =A3.select(maxrisedays>=5) 選出符合條件的記錄

從數(shù)據(jù)庫取數(shù)后,通過 SPL 實(shí)施計算,這個例子即使使用 SQL 也要嵌套 3 層子查詢才能實(shí)現(xiàn),更不用說 Java(Stream,也包括 Kotlin)了。SPL 支持分步計算,這方面要優(yōu)于 SQL。從語法特點(diǎn)上看,SPL 相當(dāng)于結(jié)合了 Java 和 SQL 的優(yōu)點(diǎn)。

SPL 提供了豐富的計算類庫,更進(jìn)一步簡化運(yùn)算。

SPL 支持多樣數(shù)據(jù)源混合計算。RDB、NoSQL、CSV、Excel、HDFS、Restful/Webservice、Kafka…都可以連接,并進(jìn)行異構(gòu)源混合計算,可以極大滿足微服務(wù)場景下面臨的多樣源問題,進(jìn)一步提升開發(fā)效率。

在 SPL 的支持下,服務(wù)邏輯的實(shí)現(xiàn)代碼都能短小很多。這就讓微服務(wù)不僅在結(jié)構(gòu)上,而且在實(shí)現(xiàn)上真地“微”起來了。

微服務(wù)無縫融合

SPL 使用 Java 開發(fā),支持 jar 包嵌入。微服務(wù)應(yīng)用可以將 SPL 引擎以 jar 包形式引入與應(yīng)用無縫集成。SPL 還封裝了標(biāo)準(zhǔn) JDBC 接口,可以在服務(wù)中通過 JDBC 調(diào)用 SPL 腳本。

具體使用時只需要引入相關(guān) jar 并部署配置文件(raqsoftConfig.xml),通過簡短的代碼就可以調(diào)用 SPL 腳本。

熱切換與低資源消耗

SPL 是解釋執(zhí)行的,天然支持熱切換。可以適應(yīng)微服務(wù)架構(gòu)下多變的服務(wù)修改需求,服務(wù)修改不需要重啟即時生效。

數(shù)據(jù)處理邏輯位于 SPL 文件(.splx)中,修改后實(shí)時生效,相對 Java 等編譯型語言需要重啟服務(wù)有很大優(yōu)勢。

借助 SPL 的熱切換特性可以幫助微服務(wù)降低資源消耗。以往通過 Java 實(shí)現(xiàn)數(shù)據(jù)處理的微服務(wù)為了能夠單獨(dú)運(yùn)維常常要獨(dú)立部署(VM/Docker 上),這樣做的好處是在物理上隔離了服務(wù)與服務(wù),但缺點(diǎn)是 docker 會消耗更多的資源,導(dǎo)致資源利用率很低。SPL 具備單獨(dú)運(yùn)維(熱切換)特性,這樣多個服務(wù)共處一處仍然可以單獨(dú)修改維護(hù),提高資源使用效率。當(dāng)然,有時為了避免服務(wù)間相互影響(如高可用)還需要單獨(dú)部署,這時 SPL 也無法降低資源消耗了。SPL 為微服務(wù)提供了更多選項(xiàng),讓微服務(wù)在體系結(jié)構(gòu)和資源消耗上也更“微”。

高性能

SPL 除了可以與微服務(wù)結(jié)合使用,還可以作為獨(dú)立的計算服務(wù)器運(yùn)行。微服務(wù)內(nèi) SPL 腳本調(diào)用 SPL 計算服務(wù)器實(shí)現(xiàn)高性能計算。

SPL 服務(wù)器支持分布式計算可以部署集群進(jìn)行橫向擴(kuò)展,支持負(fù)載均衡和容錯。同時 SPL 還提供諸多高性能算法進(jìn)一步保證計算性能。

借助 SPL 易集成、熱切換、高效開發(fā)與高性能等特性可以幫助微服務(wù)快速、高效地實(shí)現(xiàn)數(shù)據(jù)處理,同時還能為應(yīng)用結(jié)構(gòu)提供一些便利,有效助力微服務(wù)開發(fā),讓微服務(wù)全面“微”化。

分享到:
標(biāo)簽:開源
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定