互聯(lián)網(wǎng)服務(wù)器端開(kāi)發(fā)技術(shù)課件 【ch06】互聯(lián)網(wǎng)架構(gòu)_第1頁(yè)
互聯(lián)網(wǎng)服務(wù)器端開(kāi)發(fā)技術(shù)課件 【ch06】互聯(lián)網(wǎng)架構(gòu)_第2頁(yè)
互聯(lián)網(wǎng)服務(wù)器端開(kāi)發(fā)技術(shù)課件 【ch06】互聯(lián)網(wǎng)架構(gòu)_第3頁(yè)
互聯(lián)網(wǎng)服務(wù)器端開(kāi)發(fā)技術(shù)課件 【ch06】互聯(lián)網(wǎng)架構(gòu)_第4頁(yè)
互聯(lián)網(wǎng)服務(wù)器端開(kāi)發(fā)技術(shù)課件 【ch06】互聯(lián)網(wǎng)架構(gòu)_第5頁(yè)
已閱讀5頁(yè),還剩50頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

互聯(lián)網(wǎng)服務(wù)器端開(kāi)發(fā)技術(shù)互聯(lián)網(wǎng)架構(gòu)第六章iuap數(shù)字化技術(shù)叢書(shū)01RedisRedis01Redis(REmoteDIctionaryServer)是一個(gè)開(kāi)源的使用ANSIC語(yǔ)言編寫(xiě)、遵守BSD協(xié)議、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型的Key-Value數(shù)據(jù)庫(kù),可提供多種語(yǔ)言的API.它的值可以是字符串(String)、哈希(Hash)、列表(List)、集合(Sets)和有序集合(Sortedsets)等類(lèi)型,因此,通常被稱(chēng)為數(shù)據(jù)結(jié)構(gòu)服務(wù)器。Redis01一、業(yè)務(wù)需求業(yè)務(wù)緩存的實(shí)現(xiàn)方式可以將數(shù)據(jù)放置在JVM的堆內(nèi)存中,也可以放置在第三方中間件中,如MemCached、Redis。其中JVM內(nèi)存緩存有兩個(gè)弊端:①大小受到JVM堆內(nèi)存的限制,會(huì)引起頻繁GC(垃圾回收);②集群部署時(shí),因Web應(yīng)用間存在多份緩存,導(dǎo)致無(wú)法共享。盡管第三方緩存中間件解決了JVM內(nèi)存的這兩個(gè)問(wèn)題,但需要建立統(tǒng)一的連接并維護(hù)連接池,同時(shí)為了不綁定在某個(gè)特定的中間件上,還需要對(duì)多種中間件進(jìn)行適配,這些都需要平臺(tái)提供標(biāo)準(zhǔn)組件來(lái)進(jìn)行處理。Redis01二、解決方案Redis在數(shù)據(jù)結(jié)構(gòu)、持久化、過(guò)期策略、分布式集群、數(shù)據(jù)備份和災(zāi)難恢復(fù)等方面相對(duì)緩存中間件更有優(yōu)勢(shì)。iuap緩存組件還實(shí)現(xiàn)了對(duì)連接池的管理,支持Redis以主從方式或分片方式進(jìn)行部署iuap緩存組件還實(shí)現(xiàn)了對(duì)連接池的管理,支持Redis以主從方式或分片方式進(jìn)行部署。在功能上,支持Redis對(duì)緩存的讀/寫(xiě)操作及過(guò)期時(shí)間的設(shè)置;支持復(fù)雜類(lèi)型數(shù)據(jù)的操作;

支持Redis主從和分片集群的不同配置;支持Redis的密碼授權(quán)訪問(wèn);支持Redis連接池配置管理;支持阿里云Redis數(shù)據(jù)庫(kù)適配。Redis01三、整體設(shè)計(jì)環(huán)境采用Maven進(jìn)行編譯和打包發(fā)布,依賴(lài)Jedis2.6.0版本和iuap平臺(tái)的一些基礎(chǔ)組件,如iuap-log,其對(duì)外提供的依賴(lài)方式如下:其中${iuap.modules.version}為平臺(tái)在Maven私服上發(fā)布的組件version。Redis01三、整體設(shè)計(jì)Redis中間件通常是配合哨兵進(jìn)行集群部署,一主多從的部署結(jié)構(gòu)和連接的示意,如圖6-1所示。Redis01四、使用說(shuō)明1.組件包說(shuō)明iuap-cache組件利用jedis客戶(hù)端,在springside提供的對(duì)jedis封裝的基礎(chǔ)上,提供使用簡(jiǎn)易URL的方式創(chuàng)建連接池、兼容直連和哨兵方式連接,其模板類(lèi)支持Redis的分片。Redis01四、使用說(shuō)明2.組件配置(1)在屬性文件中,配置Redis的連接URL。根據(jù)業(yè)務(wù)不同的需要,可以配置成單機(jī)方式、集群方式、分片方式等單機(jī)方式示例代碼如下:集群方式示例代碼如下:分片方式示例代碼如下:Redis01四、使用說(shuō)明2.組件配置(2)Spring的配置文件中,聲明iuap-cache中的Bean代碼如下:Redis01四、使用說(shuō)明2.組件配置(3)工程中引入對(duì)iuap-cache組件的依賴(lài)代碼如下:其中${iuap.modules.version}為在pom.xml中定義的引用iuap-cache版本。Redis01四、使用說(shuō)明2.組件配置(4)代碼中調(diào)用組件提供的API,操作分布式緩存代碼如下:Redis01四、使用說(shuō)明2.組件配置(5)更多API操作和配置方式,請(qǐng)參考緩存對(duì)應(yīng)的示例工程。開(kāi)發(fā)工具包DevTool中攜帶了對(duì)分布式緩存組件的示例工程,位于DevTool/examples/example_iuap_cache下,在iuapStudio中導(dǎo)入已有的Maven工程,可以將示例工程導(dǎo)入到工作區(qū)。Redis01五、開(kāi)發(fā)步驟參考上述配置項(xiàng),配置屬性文件中的Redis連接串,引入緩存對(duì)應(yīng)的Spring配置文件applicationContext-cache.xml,如果是Web應(yīng)用,則修改web.xml如下:Redis01六、常用接口常用接口的說(shuō)明如表6-1所示。Redis01六、常用接口常用接口的說(shuō)明如表6-1所示。Redis01七、Rediscluster方式使用Redis3.0版后可支持redis-cluster方式,組件依賴(lài)Jedis2.9.0版采用Maven技術(shù)進(jìn)行編譯和打包。Redis支持cluster的特性有自動(dòng)發(fā)現(xiàn)集群中的其他節(jié)點(diǎn),集群容錯(cuò),集群管理;基于配置(nodes-port.conf)的集群管理;Hotresharding在線分片;ASK轉(zhuǎn)向/MOVED轉(zhuǎn)向機(jī)制。架構(gòu)細(xì)節(jié)上所有的Redis節(jié)點(diǎn)彼此互聯(lián)(PING-PONG機(jī)制),內(nèi)部使用二進(jìn)制協(xié)議優(yōu)化傳輸速度和帶寬。節(jié)點(diǎn)的faild功能在集群中超過(guò)半數(shù)的節(jié)點(diǎn)檢測(cè)失效時(shí)生效。Redis01八、Redis集成Spring方法級(jí)緩存Redis集成Spring方法級(jí)的緩存需求。(1)配置文件中添加代碼如下:Redis01八、Redis集成Spring方法級(jí)緩存Redis集成Spring方法級(jí)的緩存需求。(2)在需要寫(xiě)入緩存的方法上加入注解cacheService.java,注解說(shuō)明如下:其中value表示緩存的名稱(chēng),必須在spring配置文件中定義。02ZooKeeperZooKeeper02ZooKeeper是一個(gè)開(kāi)放的分布式應(yīng)用程序,可為分布式應(yīng)用提供一致性服務(wù),包括配置維護(hù)、域名服務(wù)、分布式同步、組服務(wù)等。一、定義ZooKeeper021.ZooKeeper的架構(gòu)如圖6-4所示為ZooKeeper的“客戶(hù)端——服務(wù)器架構(gòu)二、ZooKeeper基礎(chǔ)ZooKeeper02對(duì)ZooKeeper架構(gòu)的組件進(jìn)行說(shuō)明,如表6-2所示。二、ZooKeeper基礎(chǔ)ZooKeeper022.層次命名空間如圖6-5所示用于內(nèi)存表示的ZooKeeper文件系統(tǒng)的樹(shù)結(jié)構(gòu)。二、ZooKeeper基礎(chǔ)ZooKeeper02二、ZooKeeper基礎(chǔ)2.層次命名空間ZooKeeper節(jié)點(diǎn)稱(chēng)為znode,每個(gè)znode由一個(gè)名稱(chēng)標(biāo)識(shí),并用路徑(/)序列分隔。首先有一個(gè)由“/”分隔的znode,在根目錄下有兩個(gè)邏輯命名空間config和workers。config命名空間用于集中式配置管理;workers命名空間用于命名。在config命名空間下,每個(gè)znode最多可存儲(chǔ)1MB的數(shù)據(jù)。這與UNIX文件系統(tǒng)相類(lèi)似,除了父znode也可以存儲(chǔ)數(shù)據(jù)。這種結(jié)構(gòu)的主要目的是進(jìn)行存儲(chǔ)同步數(shù)據(jù),并描述znode的元數(shù)據(jù),此結(jié)構(gòu)稱(chēng)為ZooKeeper數(shù)據(jù)模型。ZooKeeper02二、ZooKeeper基礎(chǔ)3.Sessions(會(huì)話)ZooKeeper中會(huì)話的操作十分重要,其請(qǐng)求按先入先出順序執(zhí)行。一旦客戶(hù)端連接到服務(wù)器,將立即建立會(huì)話并向客戶(hù)端分配會(huì)話ID??蛻?hù)端以特定的時(shí)間間隔發(fā)送數(shù)據(jù),以保持會(huì)話的有效性。如果ZooKeeper集合在超過(guò)服務(wù)器開(kāi)啟時(shí)指定的時(shí)間上(會(huì)話超時(shí))都沒(méi)有從客戶(hù)端接收到數(shù)據(jù),則會(huì)判定客戶(hù)端死機(jī)。會(huì)話通常以毫秒為單位。當(dāng)會(huì)話結(jié)束時(shí),在該會(huì)話期間創(chuàng)建的臨時(shí)節(jié)點(diǎn)也會(huì)被刪除。ZooKeeper02二、ZooKeeper基礎(chǔ)4.Watches(監(jiān)視)監(jiān)視可以使客戶(hù)端收到關(guān)于ZooKeeper集合中的更改通知??蛻?hù)端可以在讀取特定節(jié)點(diǎn)時(shí)設(shè)置監(jiān)視。監(jiān)視可向注冊(cè)的客戶(hù)端發(fā)送任何節(jié)點(diǎn)(客戶(hù)端注冊(cè)表)已更改的通知。znode更改是與znode相關(guān)的數(shù)據(jù)的修改或znode的子項(xiàng)中的更改。只觸發(fā)一次Watches。如果客戶(hù)端想要再次通知,則必須通過(guò)另一個(gè)讀取操作來(lái)完成。當(dāng)連接會(huì)話過(guò)期時(shí),客戶(hù)端將與服務(wù)器斷開(kāi)連接,相關(guān)的Watches也將被刪除。ZooKeeper02三、ZooKeeper工作流ZooKeeper集合啟動(dòng)后等待客戶(hù)端連接??蛻?hù)端將連接到ZooKeeper集合中的一個(gè)節(jié)點(diǎn),它可以是leader或follower節(jié)點(diǎn)。一旦客戶(hù)端被連接,節(jié)點(diǎn)將向特定客戶(hù)端分配會(huì)話ID并向客戶(hù)端在ZooKeeper集合中存儲(chǔ)數(shù)據(jù),將znode路徑和數(shù)據(jù)發(fā)送到服務(wù)器,服務(wù)器將該請(qǐng)求轉(zhuǎn)發(fā)給leaderznode,然后leader將向所有的follower重新發(fā)出寫(xiě)入請(qǐng)求;如果大部分節(jié)點(diǎn)成功響應(yīng),證明寫(xiě)入請(qǐng)求成功,則成功返回代碼,并將被發(fā)送到客戶(hù)端。否則寫(xiě)入請(qǐng)求失敗。絕大多數(shù)節(jié)點(diǎn)被稱(chēng)為Quorum。ZooKeeper02三、ZooKeeper工作流ZooKeeper集合中的節(jié)點(diǎn)擁有不同數(shù)量的節(jié)點(diǎn)的效果。單節(jié)點(diǎn)效果:指當(dāng)單個(gè)節(jié)點(diǎn)發(fā)生故障時(shí),ZooKeeper集合會(huì)發(fā)生“單點(diǎn)故障”,所以不建議在生產(chǎn)環(huán)境中使用。雙節(jié)點(diǎn)效果:表示存在兩個(gè)節(jié)點(diǎn),當(dāng)其中一個(gè)節(jié)點(diǎn)有故障時(shí),則集合會(huì)發(fā)生故障。因?yàn)榕袛鄷r(shí)由于要占多數(shù),而兩個(gè)中的一個(gè)不屬于多數(shù),因此也不建議使用。三節(jié)點(diǎn)效果:若有三個(gè)節(jié)點(diǎn)而一個(gè)節(jié)點(diǎn)有故障,就可以區(qū)分出多數(shù)。因此,ZooKeeper:集合在實(shí)際生產(chǎn)環(huán)境中必須至少要有三個(gè)節(jié)點(diǎn),如有四個(gè)節(jié)點(diǎn)其中兩個(gè)節(jié)點(diǎn)故障,將會(huì)再次故障。ZooKeeper02三、ZooKeeper工作流如圖6-6所示為ZooKeeper工作流。ZooKeeper02三、ZooKeeper工作流ZooKeeper組件表的說(shuō)明如表6-3所示。ZooKeeper02四、ZooKeeperleader選舉leader選舉的過(guò)程如下:所有創(chuàng)建的節(jié)點(diǎn)具有相同路徑/app/leader_electio/guid_的順序臨時(shí)節(jié)點(diǎn),ZooKeeper集合會(huì)附加10位序列號(hào)到路徑上,創(chuàng)建的znode節(jié)點(diǎn)的路徑為/app/leader_elect/guid000000000對(duì)于給定的實(shí)例,在znode中創(chuàng)建最小數(shù)字的節(jié)點(diǎn)成為leader,而所有其他節(jié)點(diǎn)是follower;每個(gè)follower節(jié)點(diǎn)都會(huì)監(jiān)視下一個(gè)具有最小數(shù)字的znode,如創(chuàng)建znode/app/leader__elect/guid_000000008的節(jié)點(diǎn),則路徑尾部序列號(hào)為000000008的節(jié)點(diǎn)將監(jiān)視節(jié)點(diǎn)znode/app/leader_elect/guid_000000007。ZooKeeper02四、ZooKeeperleader選舉以此類(lèi)推,創(chuàng)建路徑為znode/app/leader_elect/guid000000007的節(jié)點(diǎn),其序列號(hào)為00000007的節(jié)點(diǎn)將監(jiān)視zmnode/app/leader_elect/guid_00000006。如果leader關(guān)閉,其相應(yīng)的znode/app/leader_electN就會(huì)被刪除。下一個(gè)在線的follower節(jié)點(diǎn)將通過(guò)監(jiān)視器獲得關(guān)于leader移除的通知,并檢查是否存在其他具有最小數(shù)字序列號(hào)的znode。如果沒(méi)有,則將承擔(dān)leader的角色,否則,找到的具有最小序列號(hào)的znode的節(jié)點(diǎn)將其作為新leader。因此,所有其他follower節(jié)點(diǎn)都將挑選具有最小序列號(hào)的znode的節(jié)點(diǎn)作為leader。ZooKeeper02五、ZooKeeperCLIZooKeeperCLI操作:打開(kāi)ZooKeeper服務(wù)器,然后打開(kāi)ZooKeeper客戶(hù)端(“bin/zkCli.sh”)。一旦客戶(hù)端啟動(dòng),就可以執(zhí)行相應(yīng)操作,如創(chuàng)建znode、獲取數(shù)據(jù)、監(jiān)視znode.的變化、設(shè)置數(shù)據(jù)、創(chuàng)建znode的子節(jié)點(diǎn)、列出znode的子節(jié)點(diǎn)、檢查狀態(tài),以及移除或刪除znode。創(chuàng)建znodes:用給定的路徑創(chuàng)建一個(gè)znode。其中flag參數(shù)指定創(chuàng)建的znode是臨時(shí)的、持久的,還是順序的。默認(rèn)情況下,所有znode都是持久的;當(dāng)會(huì)話過(guò)期或客戶(hù)端斷開(kāi)連接時(shí),臨時(shí)節(jié)點(diǎn)(flag:-e)將被自動(dòng)刪除;順序節(jié)點(diǎn)保證znode路徑是唯一的,ZooKeeper集合將向znode路徑填充10位序列號(hào)。ZooKeeper02五、ZooKeeperCLI創(chuàng)建順序節(jié)點(diǎn),添加flag:-s,語(yǔ)法:create-s/path/data,示例代碼如下:輸出代碼如下:ZooKeeper02五、ZooKeeperCLI獲取數(shù)據(jù):通過(guò)返回znode的關(guān)聯(lián)數(shù)據(jù)和指定znode的元數(shù)據(jù)獲得信息,如上次修改數(shù)據(jù)的時(shí)間、修改的位置,以及數(shù)據(jù)的相關(guān)信息。此CLI還用于分配監(jiān)視器以顯示數(shù)據(jù)相關(guān)的通知。語(yǔ)法:get/path,示例代碼如下:ZooKeeper02五、ZooKeeperCLIWatch(監(jiān)視):當(dāng)指定的znode或znode的子數(shù)據(jù)更改時(shí),監(jiān)視器會(huì)顯示通知,并通過(guò)get命令設(shè)置監(jiān)視。語(yǔ)法:get/path[watch]1,示例代碼如下:移除znode:移除指定的znode并遞歸其所有子節(jié)點(diǎn),只有在znode可用的情況下才會(huì)發(fā)生。語(yǔ)法:rmr/path,示例代碼如下:ZooKeeper02六、ZooKeeperAPIZooKeeper可提高API綁定Java和C的效率。使用ZooKeeperAPI應(yīng)用程序可以高效連接、交互、操作數(shù)據(jù)和協(xié)調(diào),最終斷開(kāi)與ZooKeeper集合的連接。該過(guò)程以簡(jiǎn)單和安全的方式獲得ZooKeeper集合的所有功能,并提供同步和異步方法。與ZooKeeper集合進(jìn)行交互的應(yīng)用程序稱(chēng)為ZooKeeper客戶(hù)端或簡(jiǎn)稱(chēng)客戶(hù)端。znode是ZooKeeper集合的核心組件,ZooKeeperAPI提供了一組方法,使用ZooKeeper集合來(lái)操縱znode的所有細(xì)節(jié)。ZooKeeper02七、ZooKeeper應(yīng)用程序ZooKeeper為分布式環(huán)境提供靈活協(xié)調(diào)的基礎(chǔ)框架。ZooKeeper在Hadoop中的作用非常重要,當(dāng)Hadoop集群橋接多個(gè)商品服務(wù)器時(shí),就需要協(xié)調(diào)和命名服務(wù)。ApacheHBase是一個(gè)開(kāi)源的分布式非關(guān)系型數(shù)據(jù)庫(kù),用于大型數(shù)據(jù)集的實(shí)時(shí)讀/寫(xiě)訪問(wèn),并在Hadoop分布式文件系統(tǒng)上運(yùn)行,HBase遵循主從架構(gòu)控制所有從機(jī),從機(jī)稱(chēng)為區(qū)域服務(wù)器。ApacheSolr是一個(gè)用Java編寫(xiě)的、快速的、容錯(cuò)的分布式搜索引擎,Solr有兩個(gè)不同的部分,即索引和搜索。03QuartzQuartz03一、業(yè)務(wù)需求應(yīng)用程序中經(jīng)常有定時(shí)任務(wù)的需求,如定時(shí)垃圾回收、任務(wù)調(diào)度、每隔多長(zhǎng)時(shí)間重復(fù)執(zhí)行、一個(gè)任務(wù)在不同時(shí)間段執(zhí)行等。Quartz是一個(gè)完全由Java編寫(xiě)的開(kāi)源作業(yè)調(diào)度框架,為Java應(yīng)用程序中作業(yè)調(diào)度提供了簡(jiǎn)單卻強(qiáng)大的機(jī)制。Quartz03二、解決方案任務(wù)調(diào)度是基于Quartz開(kāi)發(fā)的,它能依據(jù)事件間隔來(lái)調(diào)度任務(wù),并按照cron表達(dá)式(一種時(shí)間維度的表達(dá)方式)來(lái)操作。iuapdispatch-sdk是任務(wù)調(diào)度客戶(hù)端SDK組件,該組件可通過(guò)客戶(hù)端接口調(diào)用服務(wù)端的添加、刪除、暫停、啟動(dòng)定時(shí)任務(wù)等功能。Quartz在功能上提供獨(dú)立的任務(wù)調(diào)度服務(wù)、支持定時(shí)任務(wù)執(zhí)行、支持重復(fù)任務(wù)執(zhí)行,以及提供任務(wù)的新增、刪除、暫停接口。Quartz03三、依賴(lài)環(huán)境組件依賴(lài)Quartz框架,并采用Maven進(jìn)行編譯和打包發(fā)布,對(duì)外提供的依賴(lài)方式如下:其中,${iuap.modules.version}是平臺(tái)在Maven私服上發(fā)布的組件版本。Quartz03四、組件包說(shuō)明iuap-dispatch-sdk是任務(wù)調(diào)度客戶(hù)端SDK組件,該組件可通過(guò)客戶(hù)端接口調(diào)用服務(wù)端的添加、刪除、暫停、啟動(dòng)定時(shí)任務(wù)等功能。配置監(jiān)聽(tīng)Servlet功能,在任務(wù)調(diào)度客戶(hù)端的配置文件web.xml中,配置監(jiān)聽(tīng)任務(wù)調(diào)度客戶(hù)端SDK提供的Servlet類(lèi)地址,用于執(zhí)行回調(diào)任務(wù),其中dispatch-client.properties表示配置文件字段說(shuō)明;dispatch.send.type表示任務(wù)發(fā)送方式,默認(rèn)HTTP,同時(shí)支持SOCKET.dispatch.server.http.url表示服務(wù)器地址。dispatch.recall.type表示任務(wù)默認(rèn)回調(diào)方式,默認(rèn)HTTP,同時(shí)支持SOCKET.dispatch.recall.http.url表示任務(wù)回調(diào)地址。Quartz03五、工程樣例(1)新建任務(wù)處理類(lèi),需要實(shí)現(xiàn)ITask接口,其代碼如下:Quartz03五、工程樣例(2)新增任務(wù)的代碼如下:Quartz03六、開(kāi)發(fā)步驟(1)加入依賴(lài),其代碼如下:(2)客戶(hù)端的配置文件web.xml中,需要配置任務(wù)調(diào)度客戶(hù)端SDK提供的Servlet類(lèi)地址,用于執(zhí)行回調(diào)任務(wù),其中dispatch.send.type表示任務(wù)發(fā)送方式,默認(rèn)為HTTP,同時(shí)支持SOCKET傳輸。(3)編寫(xiě)任務(wù)代碼,該類(lèi)需要實(shí)現(xiàn)ITask接口。(4)添加任務(wù),使用SDK提供的DispatchRemoteManager類(lèi)的add方法添加任務(wù)。04登錄及權(quán)限組件概述登錄及權(quán)限組件概述04一、業(yè)務(wù)需求業(yè)務(wù)系統(tǒng)在使用時(shí)要進(jìn)行訪問(wèn)控制,僅當(dāng)以系統(tǒng)內(nèi)的用戶(hù)身份登錄系統(tǒng)時(shí),才能訪問(wèn)系統(tǒng)內(nèi)的相關(guān)功能或資源,并且不同的用戶(hù)能訪問(wèn)的功能也不同,需要根據(jù)用戶(hù)的權(quán)限進(jìn)行控制,由此就引入了登錄認(rèn)證和權(quán)限控制的要求。登錄及權(quán)限組件概述04二、功能說(shuō)明本認(rèn)證組件基于ApacheShiro,使用shiro安全框架來(lái)管理登錄及權(quán)限信息。登錄組件支持多種身份標(biāo)識(shí)。該組件還支持多個(gè)域,從域中可得到用戶(hù)相應(yīng)的角色或權(quán)限,以驗(yàn)證用戶(hù)是否能進(jìn)行操作(鑒權(quán)),提供會(huì)話管理和安全管理。權(quán)限框架提供了用戶(hù)、角色、功能、數(shù)據(jù)權(quán)限、用戶(hù)角色關(guān)聯(lián)、角色權(quán)限關(guān)聯(lián)模型,以及維護(hù)API等功能等權(quán)限,同時(shí)提供認(rèn)證、授權(quán)、加密、會(huì)話管理,以及與Web集成、緩存等功能。登錄及權(quán)限組件概述04三、整體設(shè)計(jì)依賴(lài)環(huán)境組件采用Maven進(jìn)行編譯和打包發(fā)布,其對(duì)外提供的依賴(lài)方式如下:其中,${iuap.modules.version}為平臺(tái)在Maven私服.上發(fā)布的組件的ve

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論