【正文】
心發(fā)出請求,以輸入的參數(shù)得到所需的服務(wù)經(jīng)過計(jì)算和整合的數(shù)據(jù)結(jié)果,這其中大多數(shù)的情況下還須要對數(shù)據(jù)庫存儲進(jìn)行訪問。在系統(tǒng)設(shè)計(jì)中,首先須要考慮到的是限制條件的準(zhǔn)確性,出現(xiàn)在此功能中的基金必須符合兩個條件,第一:達(dá)到OOT的數(shù)量標(biāo)準(zhǔn)。因?yàn)榇斯δ茉O(shè)計(jì)的表眾多,信息量大,所以執(zhí)行前要先確保當(dāng)時系統(tǒng)中沒有除了執(zhí)行者外別的用戶在線,需要一個使所有用戶離線的功能,這么做的目的一是為了保證數(shù)據(jù)的一致性,二是為了保證用戶操作不會影響更新操作的執(zhí)行。HttpService成為了我們最終的選擇,可以在頁面mxml或者as文件中添加HttpService。:圖 通過配置跨域配置文件可以有效的將客戶端的訪問限制在控制的范圍內(nèi),防止了客戶端的意外攻擊。同時在另一方面還要建立一個操作符的XML與之對應(yīng),設(shè)計(jì)方案如下:row fld_type=N datatext =Is Greater Than or Equal to datavalue=xxFIELDxx amp。當(dāng)然產(chǎn)生這個問題的原因是多方面的,最主要的是大數(shù)據(jù)量的數(shù)據(jù)從數(shù)據(jù)庫中加載的速度不夠,其次是頁面組件的呈現(xiàn)繪制效率過低,當(dāng)然有時候也需要考慮各種網(wǎng)絡(luò)傳輸?shù)囊蛩卦趦?nèi)。這種標(biāo)記清除法機(jī)制非常準(zhǔn)確但是同時會因?yàn)樾枰闅v整個對象結(jié)構(gòu),從而增加CPU的負(fù)擔(dān),所以在Flash Player 9之后為了減少開銷,只在需要的時候執(zhí)行這種操作。 本章小結(jié)本章主要介紹了開發(fā)過程中所涉及到的幾個主要技術(shù)問題,包括Cloud的部署,數(shù)據(jù)的前后臺交互,Excel報(bào)表的導(dǎo)出,應(yīng)用安全性的問題等等。在另一方面,為了提供更好的用戶體驗(yàn),系統(tǒng)會將用戶最后一次輸入的過濾條件保存起來,當(dāng)此用戶下一次需要使用過濾功能時就可以首先得到上一次保存了的過濾條件。至此一個完整的Excel報(bào)表就算導(dǎo)出完成了,當(dāng)然在過程中還需要增加些對文件界面的美化工作,不過考慮到導(dǎo)出的效率與服務(wù)器的承載能力,我們只對導(dǎo)出行數(shù)小于10000行的數(shù)據(jù)進(jìn)行格式美化調(diào)整,而大于10000行的則不作任何界面美化,只保證數(shù)據(jù)的準(zhǔn)確性。BlazeDS是一個基于服務(wù)器的Java遠(yuǎn)程調(diào)用(remoting)和Web消息傳遞(messaging)技術(shù),使得后臺的Java應(yīng)用程序和運(yùn)行在瀏覽器上的Flex應(yīng)用程序能夠相互通信。在這個主菜單下有十余個子選項(xiàng)用來導(dǎo)出各種特定類型的報(bào)表內(nèi)容。在一般情況下,某個基金在報(bào)表中的資產(chǎn)數(shù)目與上一期的資產(chǎn)數(shù)目的絕對差值達(dá)到一定的數(shù)目或者比例我們便稱此為OOT。[17] 本章小結(jié)本章的主要內(nèi)容是從技術(shù)的角度通過介紹各個開發(fā)相關(guān)的技術(shù),如J2EE、Flex、Cairngorm、Cloud以及詳細(xì)介紹了SOA的體系架構(gòu)。首先Cairngorm摒棄了從前依靠實(shí)現(xiàn)接口或者繼承工具類的方法實(shí)現(xiàn)框架的管理,而是采用了標(biāo)簽的方法。Cairngorm也意識到這個問題。,換句話說就是以swf形式呈現(xiàn)的網(wǎng)站幾乎不能被包括Google在內(nèi)的搜索引擎爬蟲捕捉到,對企業(yè)對外來說是個不小的損失。雖然只能使用 Flex 框架構(gòu)建 Flex 應(yīng)用程序,但Adobe Flash Builder軟件可以通過智能編碼、交互式遍歷調(diào)試以及可視設(shè)計(jì)用戶界面布局等功能加快開發(fā)。進(jìn)一步說,強(qiáng)大的社區(qū)往往有大量的質(zhì)量保證 “分析員” 通過項(xiàng)目的 bug 數(shù)據(jù)庫報(bào)告 bug。OpenLaszlo 在Web服務(wù)支持方面遠(yuǎn)遠(yuǎn)落后于Flex,因?yàn)樗枰浜?OpenLaszlo Java servlet才能支持SOAP和XMLRPC。Web技術(shù)發(fā)展到今天,有許多種實(shí)現(xiàn)技術(shù)都可以勝任搭建Cloud Application的任務(wù)。商業(yè)服務(wù)層(Business Services):用來實(shí)現(xiàn)服務(wù)協(xié)調(diào)層所請求的操作,具體的實(shí)現(xiàn)方法是去調(diào)用本身系統(tǒng)外或者自身的商業(yè)服務(wù),而這些服務(wù)往往都是些較為通用的服務(wù),如查詢匯率、查詢股票信息等。這樣做的結(jié)果是實(shí)現(xiàn)用來整合程序功能的代碼和實(shí)現(xiàn)功能本身的代碼混合在了一起,與此密切相關(guān)的就是一旦更改了一部分的功能本身代碼就會導(dǎo)致對上層代碼的入侵,換句話說就是單元間的耦合性太大。 論文組織結(jié)構(gòu)本文從基金報(bào)表系統(tǒng)的概念出發(fā),以FAR系統(tǒng)為例,主要從技術(shù)的角度結(jié)合商業(yè)需求闡述了設(shè)計(jì)和開發(fā)一個企業(yè)級基金報(bào)表系統(tǒng)中所遇到的問題以及可能的解決方案。其次,監(jiān)管問題也是云計(jì)算技術(shù)需要面對的一個問題。Google于2008年4月推出App Engine云計(jì)算平臺,它是一個由Python應(yīng)用服務(wù)器群、BigTable(Google的一個內(nèi)部的數(shù)據(jù)庫系統(tǒng))數(shù)據(jù)庫訪問及Google File System(GFS)數(shù)據(jù)儲存服務(wù)組成的平臺,能為開發(fā)者提供一體化的主機(jī)服務(wù)器及可自動升級的在線應(yīng)用服務(wù)。“云”使用了數(shù)據(jù)多副本容錯、計(jì)算節(jié)點(diǎn)同構(gòu)可互換等措施來保障服務(wù)的高可靠性,使用云計(jì)算比使用本地計(jì)算機(jī)可靠。這就是報(bào)表的生成。在本文中,作者主要分析了基金報(bào)表系統(tǒng)的課題背景,詳細(xì)闡述了云計(jì)算的技術(shù)背景,對實(shí)現(xiàn)與輔助系統(tǒng)的J2EE后臺技術(shù)架構(gòu)進(jìn)行了詳細(xì)的介紹,著重筆墨闡述了Flex及其框架Cairngorm的設(shè)計(jì)運(yùn)行機(jī)制,前后臺的銜接與整個云平臺的整合?!霸啤本哂邢喈?dāng)大的規(guī)模,Google云計(jì)算已經(jīng)擁有100多萬臺服務(wù)器,Amazon,IBM,Yahoo,Microsoft等的“云”均擁有幾十萬臺服務(wù)器。用戶可以充分享受“云”的低成本優(yōu)勢,經(jīng)常只要花費(fèi)幾百美元、幾天時間就能完成以前需要數(shù)萬美元、數(shù)月時間才能完成的任務(wù)。隨著基于云計(jì)算的服務(wù)日益發(fā)展,云計(jì)算服務(wù)將由多家服務(wù)商共同承擔(dān),而這些服務(wù)商可能將這些服務(wù)層層外包,這樣數(shù)據(jù)會經(jīng)過層層傳遞,給銀行帶來巨大的安全風(fēng)險(xiǎn)。第二,云計(jì)算是近些年來業(yè)界非常倡導(dǎo)的趨勢之一,企業(yè)也不失時機(jī)得想要將一些系統(tǒng)遷移到云端,對于FAR這種進(jìn)行重新開發(fā)的項(xiàng)目猶是如此,在基于云計(jì)算的后臺邏輯運(yùn)作下,系統(tǒng)的總體性能將大幅提升。最后簡單介紹了本文的組織結(jié)構(gòu)。3. 注冊中心向服務(wù)請求者返回服務(wù)提供者的信息。 實(shí)際應(yīng)用中的私有云在企業(yè)中實(shí)際應(yīng)用的私有云是由公司的Cloud Team來進(jìn)行開發(fā)和維護(hù)的,在現(xiàn)有的云中,已經(jīng)定義了一整套的Cloud Framework,這套SDK中包含了許多非常常見的J2EE技術(shù),公司通過包裝將其封裝在自己的框架中。成熟度:成熟度使用框架當(dāng)前版本以及框架的開發(fā)所花費(fèi)的時間長度來度量。類似地,使用LZX標(biāo)記做更多的工作意味著需要編寫的 JavaScript代碼更少。[9]Laszlo是一個開源的Rich Internet Application開發(fā)環(huán)境。2)在兼容性方面由于Flex運(yùn)行于Flash Player之上,所以幾乎不與瀏覽器發(fā)生任何沖突,可以完全做到跨瀏覽器跨平臺運(yùn)行。中文名:“煙水晶” 。FrontController(前端控制器):接受Cairngorm Events并且將它們映射到 Cairngorm mands。容器間通過相關(guān)的協(xié)議進(jìn)行通訊,實(shí)現(xiàn)組件問的相互調(diào)用。所以這個頁面對數(shù)據(jù)的采集,信息的呈現(xiàn)有著很高的要求。通過OOT菜單進(jìn)入操作OOT功能的流程如下:Procedure OOT_OperationBegin 用戶自定義過濾條件 用戶選擇某個基金 用戶編輯此基金的OOT原因 保存修改的結(jié)果 檢驗(yàn)輸入合法性 IF 數(shù)據(jù)輸入合法 THEN 保存成功 ELSE 返回修改輸入U(xiǎn)NTILAction=log off;End; Import 功能的設(shè)計(jì)Import指的是將用戶本地的有一定格式的Excel文件,通過系統(tǒng)的上傳使基金的資產(chǎn)數(shù)成批的導(dǎo)入到后臺數(shù)據(jù)庫。此功能模塊的流程如下:Procedure Rate_UpdateBegin 用戶從菜單進(jìn)入更新匯率頁面 點(diǎn)擊更新按鈕 確定更新UNTILAction=log off;End; 本章小結(jié)本章主要結(jié)合實(shí)際的商業(yè)需求選取了最具代表性的幾個功能點(diǎn),描述了它們的功能設(shè)計(jì)及執(zhí)行流程。我們設(shè)置xml的第一行為數(shù)據(jù)表的列名,之后的row為實(shí)際的數(shù)據(jù)。 數(shù)據(jù)過濾問題的描述與解決 問題的描述在系統(tǒng)的實(shí)際應(yīng)用中,用戶與用戶之間所需要的數(shù)據(jù)可能有千差萬別,每個用戶都想要所得到的數(shù)據(jù)信息是屬于自我定制的細(xì)粒度數(shù)據(jù)。第二種是在加載時只建立用戶所需要的,如果接下來用戶需要增加條件則動態(tài)得添加新行。不再被應(yīng)用所使用的對象是指那些不會再被活動著(正在工作的)的對象所引用的對象。這表明刪除的只是對象的一個引用,對于真正的對象并沒有刪除。這樣就使得整個頁面有了一個動態(tài)伸縮的效果。在設(shè)計(jì)與實(shí)現(xiàn)此功能中主要有以下的兩個困難,第一:如何判斷不同過濾條件所需要的比較操作符,比如說當(dāng)需要過濾數(shù)值型數(shù)據(jù)時需要的操作符是“大于”、“小于”、“不大于”、“不小于”、“等于”和“不等于”,但當(dāng)需要過濾字符型的數(shù)據(jù)時需要的操作符就會變成“以某字符串開始”、“包含”、“等于”、“不等于”等等,甚至還有的過濾條件只有兩個可用的選項(xiàng),“是”與“否”。圖 Flex接收解析XML示例當(dāng)然Flex與后臺的數(shù)據(jù)通信在很多情況下也有可能出現(xiàn)異常,比如說J2EE端server當(dāng)機(jī)或服務(wù)未啟動,又或者url的參數(shù)發(fā)生了改變沒有得到及時的更新等等。33浙江大學(xué)碩士學(xué)位論文 第4章 系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)第4章 系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù) 工程在云端的部署在完成了工程在開發(fā)者本地的開發(fā)與測試之后,最重要的也是檢驗(yàn)成果的步驟就是將工程部署到真正的云端。在文件和數(shù)據(jù)合法的前提下,還需要考慮在上傳中的邏輯操作,在上傳的最終結(jié)果中向用戶返回此次操作的操作結(jié)果。同時在新增基金的過程中還會包含一些條件的判斷使在接下來的步驟中根據(jù)先前的判斷輸入動態(tài)產(chǎn)生結(jié)果。J2EE 架構(gòu)分為客戶層、表示層、業(yè)務(wù)邏輯層和數(shù)據(jù)庫層,各層之間互相獨(dú)立,根據(jù)設(shè)定的接口提供服務(wù),采用組件開發(fā)和部署。 Delegate(委托):由一個Command創(chuàng)建,他將遠(yuǎn)程過程調(diào)用(HTTP,WebService等)實(shí)例化并且將結(jié)果返回給該Command。4)框架設(shè)計(jì)重用性高,有利于模塊化的設(shè)計(jì)。因Flash可以在任何支持FlashPlayer的瀏覽器展示,從而解決了瀏覽器之間的移植問題。大部分情況下,目前使用OpenLaszlo編寫應(yīng)用程序與使用Flex編寫應(yīng)用程序所需的時間是一樣的。Flex SDK 在第4次更替開發(fā)時還是 beta 版本,而OpenLaszlo已經(jīng)有一個統(tǒng)一的發(fā)布計(jì)劃,這使 OpenLaszlo略勝于Flex。相對于我們熟悉的Hadoop,它只具備類似MapReduce的分布式計(jì)算功能但是沒有HDFS(Hadoop Distributed File System)的分布式存儲功能。5. 服務(wù)使用者根據(jù)服務(wù)描述中的信息來調(diào)用服務(wù),即綁定服務(wù)。浙江大學(xué)碩士學(xué)位論文 第2章系統(tǒng)的架構(gòu)第2章 系統(tǒng)的架構(gòu) Cloud的系統(tǒng)架構(gòu) SOA架構(gòu)面向服務(wù)的體系結(jié)構(gòu)(serviceoriented architecture,SOA)是一個組件模型,它將應(yīng)用程序的不同功能單元(稱為服務(wù))通過這些服務(wù)之間定義良好的接口和契約聯(lián)系起來。最終使整個系統(tǒng)的健壯性、可用性、實(shí)時性等個方面都得到進(jìn)步。因此,如果希望銀行采用云計(jì)算這種技術(shù),怎樣確保銀行對供應(yīng)商保存數(shù)據(jù)的信任,是云計(jì)算這種商業(yè)模式急需解決的最主要的問題之一。其中,Amazon的云計(jì)算服務(wù)總稱為Amazon Web Services(AWS?!霸啤蹦苜x予用戶前所未有的計(jì)算能力。接著又介紹了幾個開發(fā)過程中使用到的技術(shù)要點(diǎn)。關(guān)鍵詞: Cloud ,F(xiàn)lex,J2EE,F(xiàn)lash Player,松耦合i浙江大學(xué)碩士學(xué)位論文 AbstractAbstractIn recent years, cloud puting, whether in the puter industry or in the life of mon people has bee a hot word, and the major IT panies have bee proponents of cloud puting. Also in the field of financial industry, cloud puting is still strong demand for its application, the online operation of financial business systems to migrate to the cloud has bee the choice to improve service efficiency, speed up the upgrade, update the business requirements.Today more and more enterprise applications services are being increasingly popular lightweight migration from C/S structure to the force of B/S structure, Web technology developed rapidly these years have emerged many mature solutions like JSP/Servlet、.NET、PHP etc. But which absolutely could not be ignored is the rise of the Rich Internet Application (RIA), it is excellent solution for a good user experience. And Flex is the leader in the RIA, we can use Flex to create the effect of the o