Redis架構(gòu)原理及應(yīng)用實(shí)踐
鏈接:https://www.jianshu.com/p/6c970eb652d5
一.Redis簡(jiǎn)介
Redis 是完全開源免費(fèi)的,是一個(gè)高性能的key-value類型的內(nèi)存數(shù)據(jù)庫(kù)。整個(gè)數(shù)據(jù)庫(kù)統(tǒng)統(tǒng)加載在內(nèi)存當(dāng)中進(jìn)行操作,定期通過異步操作把數(shù)據(jù)庫(kù)數(shù)據(jù)flush到硬盤上進(jìn)行保存。因?yàn)槭羌儍?nèi)存操作,Redis的性能非常出色,每秒可以處理超過 10萬次讀寫操作,是已知性能最快的Key-Value DB。
Redis的出色之處不僅僅是性能,Redis最大的魅力是支持保存多種數(shù)據(jù)結(jié)構(gòu),此外單個(gè)value的最大限制是1GB,因此Redis可以用來實(shí)現(xiàn)很多有用的功能,比方說用List來做FIFO雙向鏈表,實(shí)現(xiàn)一個(gè)輕量級(jí)的高性 能消息隊(duì)列服務(wù),用他的Set可以做高性能的tag系統(tǒng)等等。另外Redis也可以對(duì)存入的Key-Value設(shè)置expire時(shí)間。總結(jié)來說,使用Redis的好處如下:
1.速度快,因?yàn)閿?shù)據(jù)存在內(nèi)存中,讀的速度是 110000 次 /s, 寫的速度是 81000 次 /s;
2.支持豐富數(shù)據(jù)類型,支持string,list,set,sorted set,hash;
3.支持事務(wù),操作都是原子性,對(duì)數(shù)據(jù)的更改要么全部執(zhí)行,要么全部不執(zhí)行,事務(wù)中任意命令執(zhí)行失敗,其余命令依然被執(zhí)行。也就是說 Redis 事務(wù)不保證原子性,也不支持回滾;事務(wù)中的多條命令被一次性發(fā)送給服務(wù)器,服務(wù)器在執(zhí)行命令期間,不會(huì)去執(zhí)行其他客戶端的命令請(qǐng)求。
4.豐富的特性:可用于緩存,消息(支持 publish/subscribe 通知),按key設(shè)置過期時(shí)間,過期后將會(huì)自動(dòng)刪除,具體淘汰策略有:
4.1.volatile-lru:從已經(jīng)設(shè)置過期時(shí)間的數(shù)據(jù)集中,挑選最近最少使用的數(shù)據(jù)淘汰
4.2.volatile-ttl:從已經(jīng)設(shè)置過期時(shí)間的數(shù)據(jù)集中,挑選即將要過期的數(shù)據(jù)淘汰
4.3.volatile-random:從已經(jīng)設(shè)置過期時(shí)間的數(shù)據(jù)集中,隨機(jī)挑選數(shù)據(jù)淘汰
4.4.allkeys-lru:從所有的數(shù)據(jù)集中,挑選最近最少使用的數(shù)據(jù)淘汰
4.5.allkeys-random:從所有的數(shù)據(jù)集中,隨機(jī)挑選數(shù)據(jù)淘汰
4.6.no-enviction:禁止淘汰數(shù)據(jù)
具體過期鍵的策略有:定時(shí)刪除(緩存過期時(shí)間到就刪除,創(chuàng)建timer耗CPU),惰性刪除(獲取的時(shí)候檢查,不獲取一直留在內(nèi)存,對(duì)內(nèi)存不友好),定期刪除(CPU和內(nèi)存的折中方案)
5.支持?jǐn)?shù)據(jù)持久化,可以將內(nèi)存中的數(shù)據(jù)保存在磁盤中,重啟的時(shí)候可以再次加載進(jìn)行使用;
6.支持?jǐn)?shù)據(jù)的備份,即 master - slave 模式的數(shù)據(jù)備份。
Redis的主要缺點(diǎn)是數(shù)據(jù)庫(kù)容量受到物理內(nèi)存的限制,不能用作海量數(shù)據(jù)的高性能讀寫,因此Redis適合的場(chǎng)景主要局限在較小數(shù)據(jù)量的高性能操作和運(yùn)算上。
二.Redis的數(shù)據(jù)類型
Redis 支持 5 中數(shù)據(jù)類型:string(字符串),hash(哈希),list(列表),set(集合),zset(sorted set:有序集合)。每種數(shù)據(jù)類型的具體命令請(qǐng)參考Redis 命令參考
string
string 是 redis 最基本的數(shù)據(jù)類型。一個(gè) key 對(duì)應(yīng)一個(gè) value。string 是二進(jìn)制安全的。也就是說 redis 的 string 可以包含任何數(shù)據(jù)。比如 jpg 圖片或者序列化的對(duì)象。string 類型是 redis 最基本的數(shù)據(jù)類型,string 類型的值最大能存儲(chǔ) 512 MB。
hash
Redis hash 是一個(gè)鍵值對(duì)(key - value)集合。Redis hash 是一個(gè) string 類型的 key 和 value 的映射表,hash 特別適合用于存儲(chǔ)對(duì)象。并且可以像數(shù)據(jù)庫(kù)中一樣只對(duì)某一項(xiàng)屬性值進(jìn)行存儲(chǔ)、讀取、修改等操作。
list
Redis 列表是簡(jiǎn)單的字符串列表,按照插入順序排序。我們可以網(wǎng)列表的左邊或者右邊添加元素。list 就是一個(gè)簡(jiǎn)單的字符串集合,和 Java 中的 list 相差不大,區(qū)別就是這里的 list 存放的是字符串。list 內(nèi)的元素是可重復(fù)的。可以做消息隊(duì)列或最新消息排行等功能。
set
redis 的 set 是字符串類型的無序集合。集合是通過哈希表實(shí)現(xiàn)的,因此添加、刪除、查找的復(fù)雜度都是 O(1)。redis 的 set 是一個(gè) key 對(duì)應(yīng)著多個(gè)字符串類型的 value,也是一個(gè)字符串類型的集合,和 redis 的 list 不同的是 set 中的字符串集合元素不能重復(fù),但是 list 可以。利用唯一性,可以統(tǒng)計(jì)訪問網(wǎng)站的所有獨(dú)立 ip。
Zset
三.redis適用場(chǎng)景
1.會(huì)話緩存(Session Cache)
最常用的一種使用Redis的情景是會(huì)話緩存(session cache)。用Redis緩存會(huì)話比其他存儲(chǔ)(如Memcached)的優(yōu)勢(shì)在于:Redis提供持久化。當(dāng)維護(hù)一個(gè)不是嚴(yán)格要求一致性的緩存時(shí),如果用戶的購(gòu)物車信息全部丟失,大部分人都會(huì)不高興的。
2.隊(duì)列
Reids在內(nèi)存存儲(chǔ)引擎領(lǐng)域的一大優(yōu)點(diǎn)是提供 list 和 set 操作,這使得Redis能作為一個(gè)很好的消息隊(duì)列平臺(tái)來使用。Redis作為隊(duì)列使用的操作,就類似于本地程序語言(如Python)對(duì) list 的 push/pop 操作。
3.全頁(yè)緩存
大型互聯(lián)網(wǎng)公司都會(huì)使用Redis作為緩存存儲(chǔ)數(shù)據(jù),提升頁(yè)面相應(yīng)速度。即使重啟了Redis實(shí)例,因?yàn)橛写疟P的持久化,用戶也不會(huì)看到頁(yè)面加載速度的下降。
4.排行榜/計(jì)數(shù)器
Redis在內(nèi)存中對(duì)數(shù)字進(jìn)行遞增或遞減的操作實(shí)現(xiàn)的非常好。集合(Set)和有序集合(Sorted Set)也使得我們?cè)趫?zhí)行這些操作的時(shí)候變的非常簡(jiǎn)單。
四.Redis高可用架構(gòu)
1.持久化
Redis 是內(nèi)存型數(shù)據(jù)庫(kù),為了保證數(shù)據(jù)在斷電后不會(huì)丟失,需要將內(nèi)存中的數(shù)據(jù)持久化到硬盤上。Redis提供了兩種持久化的方式,分別是RDB(Redis DataBase)和AOF(Append Only File)。
RDB
簡(jiǎn)而言之,就是在不同的時(shí)間點(diǎn),將redis存儲(chǔ)的數(shù)據(jù)生成快照并存儲(chǔ)到磁盤等介質(zhì)上,可以將快照復(fù)制到其他服務(wù)器從而創(chuàng)建具有相同數(shù)據(jù)的服務(wù)器副本。如果系統(tǒng)發(fā)生故障,將會(huì)丟失最后一次創(chuàng)建快照之后的數(shù)據(jù)。如果數(shù)據(jù)量大,保存快照的時(shí)間會(huì)很長(zhǎng)。
AOF
換了一個(gè)角度來實(shí)現(xiàn)持久化,那就是將redis執(zhí)行過的所有寫指令記錄下來,在下次redis重新啟動(dòng)時(shí),只要把這些寫指令從前到后再重復(fù)執(zhí)行一遍,就可以實(shí)現(xiàn)數(shù)據(jù)恢復(fù)了。將寫命令添加到 AOF 文件(append only file)末尾。
使用 AOF 持久化需要設(shè)置同步選項(xiàng),從而確保寫命令同步到磁盤文件上的時(shí)機(jī)。這是因?yàn)閷?duì)文件進(jìn)行寫入并不會(huì)馬上將內(nèi)容同步到磁盤上,而是先存儲(chǔ)到緩沖區(qū),然后由操作系統(tǒng)決定什么時(shí)候同步到磁盤。選項(xiàng)同步頻率always每個(gè)寫命令都同步,eyerysec每秒同步一次,no讓操作系統(tǒng)來決定何時(shí)同步,always 選項(xiàng)會(huì)嚴(yán)重減低服務(wù)器的性能,everysec 選項(xiàng)比較合適,可以保證系統(tǒng)崩潰時(shí)只會(huì)丟失一秒左右的數(shù)據(jù),并且 Redis 每秒執(zhí)行一次同步對(duì)服務(wù)器幾乎沒有任何影響。no 選項(xiàng)并不能給服務(wù)器性能帶來多大的提升,而且會(huì)增加系統(tǒng)崩潰時(shí)數(shù)據(jù)丟失的數(shù)量。隨著服務(wù)器寫請(qǐng)求的增多,AOF 文件會(huì)越來越大。Redis 提供了一種將 AOF 重寫的特性,能夠去除 AOF 文件中的冗余寫命令。
其實(shí)RDB和AOF兩種方式也可以同時(shí)使用,在這種情況下,如果redis重啟的話,則會(huì)優(yōu)先采用AOF方式來進(jìn)行數(shù)據(jù)恢復(fù),這是因?yàn)锳OF方式的數(shù)據(jù)恢復(fù)完整度更高。如果你沒有數(shù)據(jù)持久化的需求,也完全可以關(guān)閉RDB和AOF方式,這樣的話,redis將變成一個(gè)純內(nèi)存數(shù)據(jù)庫(kù)。
2.復(fù)制
Redis為了解決單點(diǎn)數(shù)據(jù)庫(kù)問題,會(huì)把數(shù)據(jù)復(fù)制多個(gè)副本部署到其他節(jié)點(diǎn)上,通過復(fù)制,實(shí)現(xiàn)Redis的高可用性,實(shí)現(xiàn)對(duì)數(shù)據(jù)的冗余備份,保證數(shù)據(jù)和服務(wù)的高度可靠性。Redis有主從和主備兩種方式解決單點(diǎn)問題,主備(keepalived)模式下主機(jī)備機(jī)對(duì)外提供同一個(gè)虛擬IP,客戶端通過虛擬IP進(jìn)行數(shù)據(jù)操作,正常期間主機(jī)一直對(duì)外提供服務(wù),宕機(jī)后VIP自動(dòng)漂移到備機(jī)上。主從模式下當(dāng)Master宕機(jī)后,通過選舉算法(Paxos、Raft)從slave中選舉出新Master繼續(xù)對(duì)外提供服務(wù),主機(jī)恢復(fù)后以slave的身份重新加入,此模式下可以使用讀寫分離,如果數(shù)據(jù)量比較大,不希望過多浪費(fèi)機(jī)器,還希望在宕機(jī)后,做一些自定義的措施,比如報(bào)警、記日志、數(shù)據(jù)遷移等操作,推薦使用主從方式,因?yàn)楹椭鲝拇钆涞囊话氵€有個(gè)管理監(jiān)控中心(哨兵)。

②主數(shù)據(jù)庫(kù)接收同步命令后,會(huì)保存快照,創(chuàng)建一個(gè)RDB文件。
③當(dāng)主數(shù)據(jù)庫(kù)執(zhí)行完保持快照后,會(huì)向從數(shù)據(jù)庫(kù)發(fā)送RDB文件,而從數(shù)據(jù)庫(kù)會(huì)接收并載入該文件。
④主數(shù)據(jù)庫(kù)將緩沖區(qū)的所有寫命令發(fā)給從服務(wù)器執(zhí)行。
⑤以上處理完之后,之后主數(shù)據(jù)庫(kù)每執(zhí)行一個(gè)寫命令,都會(huì)將被執(zhí)行的寫命令發(fā)送給從數(shù)據(jù)庫(kù)。可以同步發(fā)送也可以異步發(fā)送,同步發(fā)送可以不用每臺(tái)都同步,可以配置一臺(tái)master,一臺(tái)slave,同時(shí)這臺(tái)salve又作為其他slave的master。異步方式無法保證數(shù)據(jù)的完整性,比如在異步同步過程中主機(jī)突然宕機(jī)了,也稱這種方式為數(shù)據(jù)弱一致性。
注意:在Redis2.8之后,主從斷開重連后會(huì)根據(jù)斷開之前最新的命令偏移量進(jìn)行增量復(fù)制。

哨兵是Redis集群架構(gòu)中非常重要的一個(gè)組件,哨兵的出現(xiàn)主要是解決了主從復(fù)制出現(xiàn)故障時(shí)需要人為干預(yù)的問題。
1.Redis哨兵主要功能
(1)集群監(jiān)控:負(fù)責(zé)監(jiān)控Redis master和slave進(jìn)程是否正常工作
(2)消息通知:如果某個(gè)Redis實(shí)例有故障,那么哨兵負(fù)責(zé)發(fā)送消息作為報(bào)警通知給管理員
(3)故障轉(zhuǎn)移:如果master node掛掉了,會(huì)自動(dòng)轉(zhuǎn)移到slave node上
(4)配置中心:如果故障轉(zhuǎn)移發(fā)生了,通知client客戶端新的master地址
2.Redis哨兵的高可用

4.集群
至少部署兩臺(tái)Redis服務(wù)器構(gòu)成一個(gè)小的集群,主要有2個(gè)目的:
高可用性:在主機(jī)掛掉后,自動(dòng)故障轉(zhuǎn)移,使前端服務(wù)對(duì)用戶無影響。
讀寫分離:將主機(jī)讀壓力分流到從機(jī)上。
可在客戶端組件上實(shí)現(xiàn)負(fù)載均衡,根據(jù)不同服務(wù)器的運(yùn)行情況,分擔(dān)不同比例的讀請(qǐng)求壓力。


緩存數(shù)據(jù)量不斷增加時(shí),單機(jī)內(nèi)存不夠使用,需要把數(shù)據(jù)切分不同部分,分布到多臺(tái)服務(wù)器上。可在客戶端對(duì)數(shù)據(jù)進(jìn)行分片,數(shù)據(jù)分片算法詳見一致性Hash詳解、虛擬桶分片。


Redis Cluster是Redis官網(wǎng)給出的集群架構(gòu)

客戶端與Redis節(jié)點(diǎn)直連,不需要中間Proxy層,直接連接任意一個(gè)Master節(jié)點(diǎn),根據(jù)公式HASH_SLOT=CRC16(key) mod 16384,計(jì)算出映射到哪個(gè)分片上,然后Redis會(huì)去相應(yīng)的節(jié)點(diǎn)進(jìn)行操作
具有如下優(yōu)點(diǎn):
(1)無需Sentinel哨兵監(jiān)控,如果Master掛了,Redis Cluster內(nèi)部自動(dòng)將Slave切換Master
(2)可以進(jìn)行水平擴(kuò)容
缺點(diǎn):
(1)批量操作是個(gè)坑,不同的key會(huì)劃分到不同的slot中,因此直接使用mset或者mget等操作是行不通的。如果執(zhí)行的key數(shù)量比較少,就不用mget了,就用串行g(shù)et操作。如果真的需要執(zhí)行的key很多,就使用Hashtag保證這些key映射到同一臺(tái)Redis節(jié)點(diǎn)上。
五.Redis高并發(fā)及熱key解決之道
1.并發(fā)設(shè)置key及分布式鎖
Redis是一種單線程機(jī)制的nosql數(shù)據(jù)庫(kù),基于key-value,數(shù)據(jù)可持久化落盤。由于單線程所以Redis本身并沒有鎖的概念,多個(gè)客戶端連接并不存在競(jìng)爭(zhēng)關(guān)系,但是利用jedis等客戶端對(duì)Redis進(jìn)行并發(fā)訪問時(shí)會(huì)出現(xiàn)問題。比如多客戶端同時(shí)并發(fā)寫一個(gè)key,一個(gè)key的值是1,本來按順序修改為2,3,4,最后是4,但是順序變成了4,3,2,最后變成了2。使用分布式鎖防止并發(fā)設(shè)置Key的原理及代碼見:使用Redis實(shí)現(xiàn)分布式鎖及其優(yōu)化,另外一種方式是使用消息隊(duì)列,把并行讀寫進(jìn)行串行化。
2.熱key問題
熱key問題說來也很簡(jiǎn)單,就是瞬間有幾十萬的請(qǐng)求去訪問redis上某個(gè)固定的key,從而壓垮緩存服務(wù)的情情況。其實(shí)生活中也是有不少這樣的例子。比如XX明星結(jié)婚。那么關(guān)于XX明星的Key就會(huì)瞬間增大,就會(huì)出現(xiàn)熱數(shù)據(jù)問題。那么如何發(fā)現(xiàn)熱KEY呢:
1.憑借業(yè)務(wù)經(jīng)驗(yàn),進(jìn)行預(yù)估哪些是熱key
2.在客戶端進(jìn)行收集
3.在Proxy層做收集
4.用redis自帶命令(monitor命令、hotkeys參數(shù))
5.自己抓包評(píng)估
解決方案:
1.利用二級(jí)緩存,比如利用ehcache,或者一個(gè)HashMap都可以。在你發(fā)現(xiàn)熱key以后,把熱key加載到系統(tǒng)的JVM中。
2.備份熱key,不要讓key走到同一臺(tái)redis上。我們把這個(gè)key,在多個(gè)redis上都存一份。可以用HOTKEY加上一個(gè)隨機(jī)數(shù)(N,集群分片數(shù))組成一個(gè)新key。
3.熱點(diǎn)數(shù)據(jù)盡量不要設(shè)置過期時(shí)間,在數(shù)據(jù)變更時(shí)同步寫緩存,防止高并發(fā)下重建緩存的資源損耗。可以用setnx做分布式鎖保證只有一個(gè)線程在重建緩存,其他線程等待重建緩存的線程執(zhí)行完,重新從緩存獲取數(shù)據(jù)即可。
3.緩存穿透
緩存穿透是指查詢一個(gè)根本不存在的數(shù)據(jù),緩存層和存儲(chǔ)層都不會(huì)命中,但是出于容錯(cuò)的考慮,如果從存儲(chǔ)層查不到數(shù)據(jù)則不寫入緩存層。緩存穿透將導(dǎo)致不存在的數(shù)據(jù)每次請(qǐng)求都要到存儲(chǔ)層去查詢,失去了緩存保護(hù)后端存儲(chǔ)的意義。造成緩存穿透的基本有兩個(gè)。第一,業(yè)務(wù)自身代碼或者數(shù)據(jù)出現(xiàn)問題,第二,一些惡意攻擊、爬蟲等造成大量空命中,下面我們來看一下如何解決緩存穿透問題。解決緩存穿透的兩種方案:
1)緩存空對(duì)象
緩存空對(duì)象會(huì)有兩個(gè)問題:
第一,空值做了緩存,意味著緩存層中存了更多的鍵,需要更多的內(nèi)存空間 ( 如果是攻擊,問題更嚴(yán)重 ),比較有效的方法是針對(duì)這類數(shù)據(jù)設(shè)置一個(gè)較短的過期時(shí)間,讓其自動(dòng)剔除。
第二,緩存層和存儲(chǔ)層的數(shù)據(jù)會(huì)有一段時(shí)間窗口的不一致,可能會(huì)對(duì)業(yè)務(wù)有一定影響。例如過期時(shí)間設(shè)置為 5 分鐘,如果此時(shí)存儲(chǔ)層添加了這個(gè)數(shù)據(jù),那此段時(shí)間就會(huì)出現(xiàn)緩存層和存儲(chǔ)層數(shù)據(jù)的不一致,此時(shí)可以利用消息系統(tǒng)或者其他方式清除掉緩存層中的空對(duì)象。
2)布隆過濾器攔截
如下圖所示,在訪問緩存層和存儲(chǔ)層之前,將存在的 key 用布隆過濾器提前保存起來,做第一層攔截。如果布隆過濾器認(rèn)為該用戶 ID 不存在,那么就不會(huì)訪問存儲(chǔ)層,在一定程度保護(hù)了存儲(chǔ)層。有關(guān)布隆過濾器的相關(guān)知識(shí),可以參考:布隆過濾器,可以利用 Redis 的 Bitmaps 實(shí)現(xiàn)布隆過濾器,GitHub 上已經(jīng)開源了類似的方案,讀者可以進(jìn)行參考:redis bitmaps實(shí)現(xiàn)布隆過濾器

4.緩存雪崩
數(shù)據(jù)未加載到緩存中,或者緩存同一時(shí)間大面積的失效,從而導(dǎo)致所有請(qǐng)求都去查數(shù)據(jù)庫(kù),導(dǎo)致數(shù)據(jù)庫(kù)CPU和內(nèi)存負(fù)載過高,甚至宕機(jī)。

1)保證緩存層服務(wù)高可用性
和飛機(jī)都有多個(gè)引擎一樣,如果緩存層設(shè)計(jì)成高可用的,即使個(gè)別節(jié)點(diǎn)、個(gè)別機(jī)器、甚至是機(jī)房宕掉,依然可以提供服務(wù),例如前面介紹過的 Redis Sentinel 和 Redis Cluster 都實(shí)現(xiàn)了高可用。
2)Redis備份和快速預(yù)熱
Redis備份保證master出問題切換為slave迅速能夠承擔(dān)線上實(shí)際流量,快速預(yù)熱保證緩存及時(shí)被寫入緩存,防止穿透到庫(kù)。
3)依賴隔離組件為后端限流并降級(jí)
無論是緩存層還是存儲(chǔ)層都會(huì)有出錯(cuò)的概率,可以將它們視同為資源。作為并發(fā)量較大的系統(tǒng),假如有一個(gè)資源不可用,可能會(huì)造成線程全部 hang 在這個(gè)資源上,造成整個(gè)系統(tǒng)不可用。降級(jí)在高并發(fā)系統(tǒng)中是非常正常的:比如推薦服務(wù)中,如果個(gè)性化推薦服務(wù)不可用,可以降級(jí)補(bǔ)充熱點(diǎn)數(shù)據(jù),不至于造成前端頁(yè)面是開天窗。
在實(shí)際項(xiàng)目中,我們需要對(duì)重要的資源 ( 例如 Redis、 MySQL、 Hbase、外部接口 ) 都進(jìn)行隔離,讓每種資源都單獨(dú)運(yùn)行在自己的線程池中,即使個(gè)別資源出現(xiàn)了問題,對(duì)其他服務(wù)沒有影響。但是線程池如何管理,比如如何關(guān)閉資源池,開啟資源池,資源池閥值管理,這些做起來還是相當(dāng)復(fù)雜的,這里推薦一個(gè) Java 依賴隔離工具Hystrix(https://github.com/Netflix/Hystrix),如下圖所示。
4)提前演練
在項(xiàng)目上線前,演練緩存層宕掉后,應(yīng)用以及后端的負(fù)載情況以及可能出現(xiàn)的問題,在此基礎(chǔ)上做一些預(yù)案設(shè)定。
5.緩存預(yù)熱
緩存預(yù)熱就是系統(tǒng)上線前,將相關(guān)的緩存數(shù)據(jù)直接加載到緩存系統(tǒng)。這樣就可以避免上線后在用戶請(qǐng)求的時(shí)候,先查詢數(shù)據(jù)庫(kù),然后再將數(shù)據(jù)緩存的問題!用戶直接查詢事先被預(yù)熱的緩存數(shù)據(jù)!
更多精彩內(nèi)容,關(guān)注我們▼▼
- EOF -
大家一起在評(píng)論區(qū)聊聊唄~
茉莉花,別名茉莉,拉丁文名:J
a
sminum sambac (L.) Ait,木犀科、素馨屬直立或攀
援灌木,高
達(dá)3米。
小枝圓柱形或稍壓扁狀,有時(shí)中空,疏被柔毛。葉對(duì)生,單葉,葉片紙質(zhì),圓形、橢圓形、卵狀橢圓形或倒卵形,兩端圓或鈍,基部有時(shí)微心形,在上面稍凹入或凹起,下面凸起,細(xì)脈在兩面常明顯,微凸起,除下面脈腋間常具簇毛外,其余無毛;裂片長(zhǎng)圓形至近圓形,先端圓或鈍。果球形,呈紫黑色。花期5-8月,果期7-9月。
茉莉的花極香,為著名的花茶原料及重要的香精原料;花、葉藥用治目赤腫痛,并有止咳化痰之效。
吳王子子駒亡走閩越,怨東甌殺其父,常勸閩越擊東甌。至建元三年,閩越發(fā)兵圍東甌。東甌食盡,困,
太史公曰:余每讀虞書,至於君臣相敕,維是幾安,而股肱不良,萬事墮壞,未嘗不流涕也。成王作頌,推己懲艾,悲彼家難,可不謂戰(zhàn)戰(zhàn)恐懼,善守善終哉?君子不為約則修德,滿則棄禮,佚能思初,安能惟始,沐浴膏澤而歌詠勤苦,非大德誰能如斯!傳曰“治定功成,禮樂乃興”。海內(nèi)人道益深,其德益至,所樂者益異。滿而不損則溢,盈而不持則傾。凡作樂者,所以節(jié)樂。君子以謙退為禮,以損減為樂,樂其如此也。以為州異國(guó)殊,情習(xí)不同,故博采風(fēng)俗,協(xié)比聲律,以補(bǔ)短移化,助流政教。天子躬於明堂臨觀,而萬民咸蕩滌邪穢,斟酌飽滿,以飾厥性。故云雅頌之音理而民正,嘄噭之聲興而士奮,鄭衛(wèi)之曲動(dòng)而心淫。及其調(diào)和諧合,鳥獸盡感,而況懷五常,含好惡,自然之勢(shì)也?
治道虧缺而鄭音興起,封君世辟,名顯鄰州,爭(zhēng)以相高。自仲尼不能與齊優(yōu)遂容於魯,雖退正樂以誘世,作五章以剌時(shí),猶莫之化。陵遲以至六國(guó),流沔沈佚,遂往不返,卒於喪身滅宗,并國(guó)於秦。
秦二世尤以為娛。丞相李斯進(jìn)諫曰:“放棄詩(shī)書,極意聲色,祖伊所以懼也;輕積細(xì)過,恣心長(zhǎng)夜,紂所以亡也。”趙高曰:“五帝、三王樂各殊名,示不相襲。上自朝廷,下至人民,得以接歡喜,合殷勤,非此和說不通,解澤不流,亦各一世之化,度時(shí)之樂,何必華山之騄耳而后行遠(yuǎn)乎?”二世然之。
高祖過沛詩(shī)三侯之章,令小兒歌之。高祖崩,令沛得以四時(shí)歌鳷宗廟。孝惠、孝文、孝景無所增更,於樂府習(xí)常肄舊而已。
至今上即位,作十九章,令侍中李延年次序其聲,拜為協(xié)律都尉。通一經(jīng)之士不能獨(dú)知其辭,皆集會(huì)五經(jīng)家,相與共講習(xí)讀之,乃能通知其意,多爾雅之文。
漢家常以正月上辛祠太一甘泉,以昏時(shí)夜祠,到明而終。常有流星經(jīng)於祠壇上。使僮男僮女七十人俱歌。春歌青陽(yáng),夏歌硃明,秋歌西昚,冬歌玄冥。世多有,故不論。
又嘗得神馬渥洼水中,復(fù)次以為太一之歌。曲曰:“太一貢兮天馬下,霑赤汗兮沫流赭。騁容與兮跇萬里,今安匹兮龍為友。”後伐大宛得千里馬,馬名蒲梢,次作以為歌。歌詩(shī)曰:“天馬來兮從西極,經(jīng)萬里兮歸有德。承靈威兮降外國(guó),涉流沙兮四夷服。”中尉汲黯進(jìn)曰:“凡王者作樂,上以承祖宗,下以化兆民。今陛下得馬,詩(shī)以為歌,協(xié)於宗廟,先帝百姓豈能知其音邪?”上默然不說。丞相公孫弘曰:“黯誹謗圣制,當(dāng)族。”
凡音之起,由人心生也。人心之動(dòng),物使之然也。感於物而動(dòng),故形於聲;聲相應(yīng),故生變;變成方,謂之音;比音而樂之,及干戚羽旄,謂之樂也。樂者,音之所由生也,其本在人心感於物也。是故其哀心感者,其聲噍以殺;其樂心感者,其聲啴以緩;其喜心感者,其聲發(fā)以散;其怒心感者,其聲粗以厲;其敬心感者,其聲直以廉;其愛心感者,其聲和以柔。六者非性也,感於物而后動(dòng),是故先王慎所以感之。故禮以導(dǎo)其志,樂以和其聲,政以壹其行,刑以防其奸。禮樂刑政,其極一也,所以同民心而出治道也。
凡音者,生人心者也。情動(dòng)於中,故形於聲,聲成文謂之音。是故治世之音安以樂,其正和;亂世之音怨以怒,其正乖;亡國(guó)之音哀以思,其民困。聲音之道,與正通矣。宮為君,商為臣,角為民,徵為事,羽為物。五者不亂,則無怗懘之音矣。宮亂則荒,其君驕;商亂則搥,其臣?jí)模唤莵y則憂,其民怨;徵亂則哀,其事勤;羽亂則危,其財(cái)匱。五者皆亂,迭相陵,謂之慢。如此則國(guó)之滅亡無日矣。鄭衛(wèi)之音,亂世之音也,比於慢矣。桑間濮上之音,亡國(guó)之音也,其政散,其民流,誣上行私而不可止。
凡音者,生於人心者也;樂者,通於倫理者也。是故知聲而不知音者,禽獸是也;知音而不知樂者,眾庶是也。唯君子為能知樂。是故審聲以知音,審音以知樂,審樂以知政,而治道備矣。是故不知聲者不可與言音,不知音者不可與言樂知樂則幾於禮矣。禮樂皆得,謂之有德。德者得也。是故樂之隆,非極音也;食饗之禮,非極味也。清廟之瑟,硃弦而疏越,一倡而三嘆,有遺音者矣。大饗之禮,尚玄酒而俎腥魚,大羹不和,有遺味者矣。是故先王之制禮樂也,非以極口腹耳目之欲也,將以教民平好惡而反人道之正也。
人生而靜,天之性也;感於物而動(dòng),性之頌也。物至知知,然后好惡形焉。好惡無節(jié)於內(nèi),知誘於外,不能反己,天理滅矣。夫物之感人無窮,而人之好惡無節(jié),則是物至而人化物也。人化物也者,滅天理而窮人欲者也。於是有悖逆詐偽之心,有淫佚作亂之事。是故彊者脅弱,眾者暴寡,知者詐愚,勇者苦怯,疾病不養(yǎng),老幼孤寡不得其所,此大亂之道也。是故先王制禮樂,人為之節(jié):衰麻哭泣,所以節(jié)喪紀(jì)也;鐘鼓干戚,所以和安樂也;婚姻冠笄,所以別男女也;射鄉(xiāng)食饗,所以正交接也。禮節(jié)民心,樂和民聲,政以行之,刑以防之。禮樂刑政四達(dá)而不悖,則王道備矣。
樂者為同,禮者為異。同則相親,異則相敬。樂勝則流,禮勝則離。合情飾貌者,禮樂之事也。禮義立,則貴賤等矣;樂文同,則上下和矣;好惡著,則賢不肖別矣;刑禁暴,爵舉賢,則政均矣。仁以愛之,義以正之,如此則民治行矣。
樂由中出,禮自外作。樂由中出,故靜;禮自外作,故文。大樂必易,大禮必簡(jiǎn)。樂至則無怨,禮至則不爭(zhēng)。揖讓而治天下者,禮樂之謂也。暴民不作,諸侯賓服,兵革不試,五刑不用,百姓無患,天子不怒,如此則樂達(dá)矣。合父子之親,明長(zhǎng)幼之序,以敬四海之內(nèi)。天子如此,則禮行矣。
大樂與天地同和,大禮與天地同節(jié)。和,故百物不失;節(jié),故祀天祭地。明則有禮樂,幽則有鬼神,如此則四海之內(nèi)合敬同愛矣。禮者,殊事合敬者也;樂者,異文合愛者也。禮樂之情同,故明王以相沿
萬石君名奮,其父趙人也,姓石氏。趙亡,徙居溫。高祖東擊項(xiàng)籍,過河內(nèi),時(shí)奮年十五,為小吏,侍高祖。高祖與語,愛其恭敬,問曰:“若何有?”對(duì)曰:“奮獨(dú)有母,不幸失明。家貧。有姊,能鼓琴。”高祖曰:“若能從我乎?”曰:“原盡力。”於是高祖召其姊為美人,以?shī)^為中涓,受書謁,徙其家長(zhǎng)安中戚里,以姊為美人故也。其官至孝文時(shí),積功勞至大中大夫。無文學(xué),恭謹(jǐn)無與比。
文帝時(shí),東陽(yáng)侯張相如為太子太傅,免。選可為傅者,皆推奮,奮為太子太傅。及孝景即位,以為九卿;迫近,憚之,徙奮為諸侯相。奮長(zhǎng)子建,次子甲,次子乙,次子慶,皆以馴行孝謹(jǐn),官皆至二千石。於是景帝曰:“石君及四子皆二千石,人臣尊寵乃集其門。”號(hào)奮為萬石君。
孝景帝季年,萬石君以上大夫祿歸老于家,以歲時(shí)為朝臣。過宮門闕,萬石君必下車趨,見路馬必式焉。子孫為小吏,來歸謁,萬石君必朝服見之,不名。子孫有過失,不譙讓,為便坐,對(duì)案不食。然后諸子相責(zé),因長(zhǎng)老肉袒固謝罪,改之,乃許。子孫勝冠者在側(cè),雖燕居必冠,申申如也。僮仆如也,唯謹(jǐn)。上時(shí)賜食於家,必稽首俯伏而食之,如在上前。其執(zhí)喪,哀戚甚悼。子孫遵教,亦如之。萬石君家以孝謹(jǐn)聞乎郡國(guó),雖齊魯諸儒質(zhì)行,皆自以為不及也。
建元二年,郎中令王臧以文學(xué)獲罪。皇太后以為儒者文多質(zhì)少,今萬石君家不言而躬行,乃以長(zhǎng)子建為郎中令,少子慶為內(nèi)史。
建老白首,萬石君尚無恙。建為郎中令,每五日洗沐歸謁親,入子舍,竊問侍者,取親中稖廁窬,身自浣滌,復(fù)與侍者,不敢令萬石君知,以為常。建為郎中令,事有可言,屏人恣言,極切;至廷見,如不能言者。是以上乃親尊禮之。
萬石君徙居陵里。內(nèi)史慶醉歸,入外門不下車。萬石君聞之,不食。慶恐,肉袒請(qǐng)罪,不許。舉宗及兄建肉袒,萬石君讓曰:“內(nèi)史貴人,入閭里,里中長(zhǎng)老皆走匿,而內(nèi)史坐車中自如,固當(dāng)!”乃謝罷慶。慶及諸子弟入里門,趨至家。
萬石君以元朔五年中卒。長(zhǎng)子郎中令建哭泣哀思,扶杖乃能行。歲馀,建亦死。諸子孫咸孝,然建最甚,甚於萬石君。
建為郎中令,書奏事,事下,建讀之,曰:“誤書!‘馬’者與尾當(dāng)五,今乃四,不足一。上譴死矣!”甚惶恐。其為謹(jǐn)慎,雖他皆如是。
萬石君少子慶為太仆,御出,上問車中幾馬,慶以策數(shù)馬畢,舉手曰:“六馬。”慶於諸子中最為簡(jiǎn)易矣,然猶如此。為齊相,舉齊國(guó)皆慕其家行,不言而齊國(guó)大治,為立石相祠。
元狩元年,上立太子,選群臣可為傅者,慶自沛守為太子太傅,七歲遷為御史大夫。
元鼎五年秋,丞相有罪,罷。制詔御史:“萬石君先帝尊之,子孫孝,其以御史大夫慶為丞相,封為牧丘侯。”是時(shí)漢方南誅兩越,東擊朝鮮,北逐匈奴,西伐大宛,中國(guó)多事。天子巡狩海內(nèi),修上古神祠,封禪,興禮樂。公家用少,桑弘羊等致利,王溫舒之屬峻法,兒寬等推文學(xué)至九卿,更進(jìn)用事,事不關(guān)決於丞相,丞相醇謹(jǐn)而已。在位九歲,無能有所匡言。嘗欲請(qǐng)治上近臣所忠、九卿咸宣罪,不能服,反受其過,贖罪。
元封四年中,關(guān)東流民二百萬口,無名數(shù)者四十萬,公卿議欲請(qǐng)徙流民於邊以適之。上以為丞相老謹(jǐn),不能與其議,乃賜丞相告歸,而案御史大夫以下議為請(qǐng)者。丞相慚不任職,乃上書曰:“慶幸得待罪丞相,罷駑無以輔治,城郭倉(cāng)庫(kù)空虛,民多流亡,罪當(dāng)伏斧質(zhì),上不忍致法。原歸丞相侯印,乞骸骨歸,避賢者路。”天子曰:“倉(cāng)廩既空,民貧流亡,而君欲請(qǐng)徙之,搖蕩不安,動(dòng)危之,而辭位,君欲安歸難乎?”以書讓慶,慶甚慚,遂復(fù)視事。
慶文深審謹(jǐn),然無他大略,為百姓言。後三歲馀,太初二年中,丞相慶卒,謚為恬侯。慶中子德,慶愛用之,上以德為嗣,代侯。後為太常,坐法當(dāng)死,贖免為庶人。慶方為丞相,諸子孫為吏更至二千石者十三人。及慶死後,稍以罪去,孝謹(jǐn)益衰矣。
建陵侯衛(wèi)綰者,代大陵人也。綰以戲車為郎,事文帝,功次遷為中郎將,醇謹(jǐn)無他。孝景為太子時(shí),召上左右飲,而綰稱病不行。文帝且崩時(shí),屬孝景曰:“綰長(zhǎng)者,善遇之。”及文帝崩,景帝立,歲馀不噍呵綰,綰日以謹(jǐn)力。
景帝幸上林,詔中郎將參乘,還而問曰:“君知所以得參乘乎?”綰曰:“臣從車士幸得以功次遷為中郎將,不自知也。”上問曰:“吾為太子時(shí)召君,君不肯來,何也?”對(duì)曰:“死罪,實(shí)病!”上賜之劍。綰曰:“先帝賜臣劍凡六,劍不敢奉詔。”上曰:“劍,人之所施易,獨(dú)至今乎?”綰曰:“具在。”上使取六劍,劍尚盛,未嘗服也。郎官有譴,常蒙其罪,不與他將爭(zhēng);有功,常讓他將。上以為廉,忠實(shí)無他腸,乃拜綰為河間王太傅。吳楚反,詔綰為將,將河間兵擊吳楚有功,拜為中尉。三歲,以軍功,孝景前六年中封綰為建陵侯。
其明年,上廢太子,誅栗卿之屬。上以為綰長(zhǎng)者,不忍,乃賜綰告歸,而使郅都治捕栗氏。既已,上立膠東王為太子,召綰,拜為太子太傅。久之,遷為御史大夫。五歲,代桃侯舍為丞相,朝奏事如職所奏。然自初官以至丞相,終無可言。天子以為敦厚,可相少主,尊寵之,賞賜甚多。
為丞相三歲,景帝崩,武帝立。建元年中,丞相以景帝疾時(shí)諸官囚多坐不辜者,而君不任職,免之。其後綰卒,子信代。坐酎金失侯。
塞侯直不疑者,南陽(yáng)人也。為郎,事文帝。其同舍有告歸,誤持同舍郎金去,已而金主覺,妄意不疑,不疑謝有之,買金償。而告歸者來而歸金,而前郎亡金者大慚,以此稱為長(zhǎng)者。文帝稱舉,稍遷至太中大夫。朝廷見,人或毀曰:“不疑狀貌甚美,然獨(dú)無柰其善盜嫂何也!”不疑聞,曰:“我乃無兄。”然終不自明也。
吳楚反時(shí),不疑以二千石將兵擊之。景帝後元年,拜為御史大夫。天子修吳楚時(shí)功,乃封不疑為塞侯。武帝建元年中,
諺曰“力田不如逢年,善仕不如遇合”,固無虛言。非獨(dú)女以色媚,而士宦亦有之。
昔以色幸者多矣。至漢興,高祖至暴抗也,然籍孺以佞幸;孝惠時(shí)有閎孺。此兩人非有材能,徒以婉佞貴幸,與上臥起,公卿皆因關(guān)說。故孝惠時(shí)郎侍中皆冠鵕璘,貝帶,傅脂粉,化閎、籍之屬也。兩人徙家安陵。
孝文時(shí)中寵臣,士人則鄧通,宦者則趙同、北宮伯子。北宮伯子以愛人長(zhǎng)者;而趙同以星氣幸,常為文帝參乘;鄧通無伎能。鄧通,蜀郡南安人也,以濯船為黃頭郎。孝文帝夢(mèng)欲上天,不能,有一黃頭郎從後推之上天,顧見其衣裻帶後穿。覺而之漸臺(tái),以夢(mèng)中陰目求推者郎,即見鄧通,其衣後穿,夢(mèng)中所見也。召問其名姓,姓鄧氏,名通,文帝說焉,尊幸之日異。通亦愿謹(jǐn),不好外交,雖賜洗沐,不欲出。於是文帝賞賜通巨萬以十?dāng)?shù),官至上大夫。文帝時(shí)時(shí)如鄧通家游戲。然鄧通無他能,不能有所薦士,獨(dú)自謹(jǐn)其身以媚上而已。上使善相者相通,曰“當(dāng)貧餓死”。文帝曰:“能富通者在我也。何謂貧乎?”於是賜鄧通蜀嚴(yán)道銅山,得自鑄錢,“鄧氏錢”布天下。其富如此。
文帝嘗病癰,鄧通常為帝唶吮之。文帝不樂,從容問通曰:“天下誰最愛我者乎?”通曰:“宜莫如太子。”太子入問病,文帝使唶癰,唶癰而色難之。已而聞鄧通常為帝唶吮之,心慚,由此怨通矣。及文帝崩,景帝立,鄧通免,家居。居無何,人有告鄧通盜出徼外鑄錢。下吏驗(yàn)問,頗有之,遂竟案,盡沒入鄧通家,尚負(fù)責(zé)數(shù)巨萬。長(zhǎng)公主賜鄧通,吏輒隨沒入之,一簪不得著身。於是長(zhǎng)公主乃令假衣食。竟不得名一錢,寄死人家。
孝景帝時(shí),中無寵臣,然獨(dú)郎中令周文仁,仁寵最過庸,乃不甚篤。
今天子中寵臣,士人則韓王孫嫣,宦者則李延年。嫣者,弓高侯孽孫也。今上為膠東王時(shí),嫣與上學(xué)書相愛。及上為太子,愈益親嫣。嫣善騎射,善佞。上即位,欲事伐匈奴,而嫣先習(xí)胡兵,以故益尊貴,官至上大夫,賞賜擬於鄧通。時(shí)嫣常與上臥起。江都王入朝,有詔得從入獵上林中。天子車駕蹕道未行,而先使嫣乘副車,從數(shù)十百騎,騖馳視獸。江都王望見,以為天子,辟?gòu)恼撸]道傍。嫣驅(qū)不見。既過,江都王怒,為皇太后泣曰:“請(qǐng)得歸國(guó)入宿衛(wèi),比韓嫣。”太后由此嗛嫣。嫣侍上,出入永巷不禁,以奸聞皇太后。皇太后怒,使使賜嫣死。上為謝,終不能得,嫣遂死。而案道侯韓說,其弟也,亦佞幸。
李延年,中山人也。父母及身兄弟及女,皆故倡也。延年坐法腐,給事狗中。而平陽(yáng)公主言延年女弟善舞,上見,心說之,及入永巷,而召貴延年。延年善歌,為變新聲,而上方興天地祠,欲造樂詩(shī)歌弦之。延年善承意,弦次初詩(shī)。其女弟亦幸,有子男。延年佩二千石印,號(hào)協(xié)聲律。與上臥起,甚貴幸,埒如韓嫣也。久之,浸與中人亂,出入驕恣。及其女弟李夫人卒後,愛弛,則禽誅延年昆弟也。
自是之後,內(nèi)寵嬖臣大底外戚之家,然不足數(shù)也。衛(wèi)青、霍去病亦以外戚貴幸,然頗用材能自進(jìn)。
太史公曰:甚哉愛憎之時(shí)!彌子瑕之行,足以觀後人佞幸矣。雖百世可知也。
傳稱令色,詩(shī)刺巧言。冠璘入侍,傅粉承恩。黃頭賜蜀,宦者同軒。新聲都尉,挾彈王孫。泣魚竊駕,著自前論。
與丞相綰俱以過免。
不疑學(xué)老子言。其所臨,為官如故,唯恐人知其為吏跡也。不好立名稱,稱為長(zhǎng)者。不疑卒,子相如代。孫望,坐酎金失侯。
郎中令周文者,名仁,其先故任城人也。以醫(yī)見。景帝為太子時(shí),拜為舍人,積功稍遷,孝文帝時(shí)至太中大夫。景帝初即位,拜仁為郎中令。
仁為人陰重不泄,常衣敝補(bǔ)衣溺袴,期為不絜清,以是得幸。景帝入臥內(nèi),於後宮祕(mì)戲,仁常在旁。至景帝崩,仁尚為郎中令,終無所言。上時(shí)問人,仁曰:“上自察之。”然亦無所毀。以此景帝再自幸其家。家徙陽(yáng)陵。上所賜甚多,然常讓,不敢受也。諸侯群臣賂遺,終無所受。
武帝立,以為先帝臣,重之。仁乃病免,以二千石祿歸老,子孫咸至大官矣。
御史大夫張叔者,名歐,安丘侯說之庶子也。孝文時(shí)以治刑名言事太子。然歐雖治刑名家,其人長(zhǎng)者。景帝時(shí)尊重,常為九卿。至武帝元朔四年,韓安國(guó)免,詔拜歐為御史大夫。自歐為吏,未嘗言案人,專以誠(chéng)長(zhǎng)者處官。官屬以為長(zhǎng)者,亦不敢大欺。上具獄事,有可卻,卻之;不可者,不得已,為涕泣面對(duì)而封之。其愛人如此。
老病篤,請(qǐng)免。於是天子亦策罷,以上大夫祿歸老于家。家於陽(yáng)陵。子孫咸至大官矣。
太史公曰:仲尼有言曰“君子欲訥於言而敏於行”,其萬石、建陵、張叔之謂邪?是以其教不肅而成,不嚴(yán)而治。塞侯微巧,而周文處讇,君子譏之,為其近於佞也。然斯可謂篤行君子矣!
萬石孝謹(jǐn),自家形國(guó)。郎中數(shù)馬,內(nèi)史匍匐。綰無他腸,塞有陰德。刑名張歐,垂涕恤獄。敏行訥言,俱嗣芳躅。
也。故事與時(shí)并,名與功偕。故鐘鼓管磬羽籥干戚,樂之器也;詘信俯仰級(jí)兆舒疾,樂之文也。簠簋俎豆制度文章,禮之器也;升降上下周旋裼襲,禮之文也。故知禮樂之情者能作,識(shí)禮樂之文者能術(shù)。作者之謂圣,術(shù)者之謂明。明圣者,術(shù)作之謂也。
樂者,天地之和也;禮者,天地之序也。和,故百物皆化;序,故群物皆別。樂由天作,禮以地制。過制則亂,過作則暴。明於天地,然後能興禮樂也。論倫無患,樂之情也;欣喜驩愛,樂之也。中正無邪,禮之質(zhì)也;莊敬恭順,禮之制也。若夫禮樂之施於金石,越於聲音,用於宗廟社稷,事于山川鬼神,則此所以與民同也。
王者功成作樂,治定制禮。其功大者其樂備,其治辨者其禮具。干戚之舞,非備樂也;亨孰而祀,非達(dá)禮也。五帝殊時(shí),不相沿樂;三王異世,不相襲禮。樂極則憂,禮粗則偏矣。及夫敦樂而無憂,禮備而不偏者,其唯大圣乎?天高地下,萬物散殊,而禮制行也;流而不息,合同而化,而樂興也。春作夏長(zhǎng),仁也;秋斂冬藏,義也。仁近於樂,義近於禮。樂者敦和,率神而從天;禮者辨宜,居鬼而從地。故圣人作樂以應(yīng)天,作禮以配地。禮樂明備,天地官矣。
天尊地卑,君臣定矣。高卑已陳,貴賤位矣。動(dòng)靜有常,小大殊矣。方以類聚,物以群分,則性命不同矣。在天成象,在地成形,如此則禮者天地之別也。地氣上隮,天氣下降,陰陽(yáng)相摩,天地相蕩,鼓之以雷霆,奮之以風(fēng)雨,動(dòng)之以四時(shí),暖之以日月,而百化興焉,如此則樂者天地之和也。
化不時(shí)則不生,男女無別則亂登,此天地之情也。及夫禮樂之極乎天而蟠乎地,行乎陰陽(yáng)而通乎鬼神,窮高極遠(yuǎn)而測(cè)深厚,樂著太始而禮居成物。著不息者天也,著不動(dòng)者地也。一動(dòng)一靜者,天地之間也。故圣人曰“禮云樂云”。
且降,乃使人告急天子。天子問太尉田蚡,蚡對(duì)曰:“越人相攻擊,固其常,又?jǐn)?shù)反覆,不足以煩中國(guó)往救也。自秦時(shí)棄弗屬。”於是中大夫莊助詰蚡曰:“特患力弗能救,德弗能覆;誠(chéng)能,何故棄之?且秦舉咸陽(yáng)而棄之,何乃越也!今小國(guó)以窮困來告急天子,天子弗振,彼當(dāng)安所告愬?又何以子萬國(guó)乎?”上曰:“太尉未足與計(jì)。吾初即位,不欲出虎符發(fā)兵郡國(guó)。”乃遣莊助以節(jié)發(fā)兵會(huì)稽。會(huì)稽太守欲距不為發(fā)兵,助乃斬一司馬,諭意指,遂發(fā)兵浮海救東甌。未至,閩越引兵而去。東甌請(qǐng)舉國(guó)徙中國(guó),乃悉舉眾來,處江淮之間。
至建元六年,閩越擊南越。南越守天子約,不敢擅發(fā)兵擊而以聞。上遣大行王恢出豫章,大農(nóng)韓安國(guó)出會(huì)稽,皆為將軍。兵未逾嶺,閩越王郢發(fā)兵距險(xiǎn)。其弟馀善乃與相、宗族謀曰:“王以擅發(fā)兵擊南越,不請(qǐng),故天子兵來誅。今漢兵眾彊,今即幸勝之,後來益多,終滅國(guó)而止。今殺王以謝天子。天子聽,罷兵,固一國(guó)完;不聽,乃力戰(zhàn);不勝,即亡入海。”皆曰“善”。即鏦殺王,使使奉其頭致大行。大行曰:“所為來者誅王。今王頭至,謝罪,不戰(zhàn)而耘,利莫大焉。”乃以便宜案兵告大農(nóng)軍,而使使奉王頭馳報(bào)天子。詔罷兩將兵,曰:“郢等首惡,獨(dú)無諸孫繇君丑不與謀焉。”乃使郎中將立丑為越繇王,奉閩越先祭祀。
馀善已殺郢,威行於國(guó),國(guó)民多屬,竊自立為王。繇王不能矯其眾持正。天子聞之,為馀善不足復(fù)興師,曰:“馀善數(shù)與郢謀亂,而後首誅郢,師得不勞。”因立馀善為東越王,與繇王并處。
至元鼎五年,南越反,東越王馀善上書,請(qǐng)以卒八千人從樓船將軍擊呂嘉等。兵至揭揚(yáng),以海風(fēng)波為解,不行,持兩端,陰使南越。及漢破番禺,不至。是時(shí)樓船將軍楊仆使使上書,原便引兵擊東越。上曰士卒勞倦,不許,罷兵,1、伯庸。《離騷》:“朕皇考曰伯庸”。譬如作家馬伯庸……
2、正則、靈均。《離騷》:“名余曰正則兮,字余曰靈均”。正則:公正而有法則。靈均:靈善而均調(diào)。屈原名平,字原,正則是對(duì)“平”字進(jìn)行的解釋,靈均是對(duì)“原”字進(jìn)行的解釋。
3、修能。《離騷》:“又重之以修能”。修能:即美好的外表儀形。一釋為很強(qiáng)的才干和能力。
4、騏、驥。《離騷》:“乘騏驥以馳騁兮”。騏驥:駿馬。
5、峻茂。《離騷》:“冀枝葉之峻茂兮”。風(fēng)信子(學(xué)名:Hyacinthus orientalis L.):是多年草本球根類植物,鱗莖卵形,有膜質(zhì)外皮,皮膜顏色與花色成正相關(guān),未開花時(shí)形如大蒜,原產(chǎn)地中海沿岸及小亞細(xì)亞一帶,是研究發(fā)現(xiàn)的會(huì)開花的植物中最香的一個(gè)品種。喜陽(yáng)光充足和比較濕潤(rùn)的生長(zhǎng)環(huán)境,要求排水良好和肥沃的沙壤土等。全世界風(fēng)信子的園藝品種約有單閼之歲兮,四月孟夏,庚子日施兮,服集予舍,止于坐隅,貌甚間暇。異物來集兮,私怪其故,發(fā)書占之兮,筴言其度。曰“野鳥入處兮,主人將去”。請(qǐng)問于服兮:“予去何之?吉乎告我,兇言其菑。淹數(shù)之度兮,語予其期。”服乃嘆息,舉首奮翼,口不能言,請(qǐng)對(duì)以意。
萬物變化兮,固無休息。斡流而遷兮,或推而還。形氣轉(zhuǎn)續(xù)兮,變化而嬗。沕穆無窮兮,胡可勝言!禍兮福所倚,福兮禍所伏;憂喜聚門兮,吉兇同域。彼吳彊大兮,夫差以敗;越棲會(huì)稽兮,句踐霸世。斯游遂成兮,卒被五刑;傅說胥靡兮,乃相武丁。夫禍之與福兮,何異糾纆。命不可說兮,孰知其極?水激則旱兮,矢激則遠(yuǎn)。萬物回薄兮,振蕩相轉(zhuǎn)。云蒸雨降兮,錯(cuò)繆相紛。大專槃物兮,坱軋無垠。天不可與慮兮,道不可與謀。遲數(shù)有命兮,惡識(shí)其時(shí)?
且夫天地為爐兮,造化為工;陰陽(yáng)為炭兮,萬物為銅。合散消息兮,安有常則;千變?nèi)f化兮,未始有極。忽然為人兮,何足控?fù)唬换癁楫愇镔猓趾巫慊迹⌒≈运劫猓v彼貴我;通人大觀兮,物無不可。貪夫徇財(cái)兮,烈士徇名;夸者死權(quán)兮,品庶馮生。述迫之徒兮,或趨西東;大人不曲兮,億變齊同。拘士系俗兮,羖如囚拘;至人遺物兮,獨(dú)與道俱。眾人或或兮,好惡積意;真人淡漠兮,獨(dú)與道息。釋知遺形兮,超然自喪;寥廓忽荒兮,與道翱翔。乘流則逝兮,得坻則止;縱軀委命兮,不私與己。其生若浮兮,其死若休;澹乎若深淵之靜,氾乎若不系之舟。不以生故自寶兮,養(yǎng)空而浮;德人無累兮,知命不憂。細(xì)故粦兮,何足以疑!
後歲馀,賈生徵見。孝文帝方受釐,坐宣室。上因感鬼神事,而問鬼神之本。賈生因具道所以然之狀。至夜半,文帝前席。既罷,曰:“吾久不見賈生,自以為過之,今不及也。”居頃之,拜賈生為梁懷王太傅。梁懷王,文帝之少子,愛,而好書,故令賈生傅之。
文帝復(fù)封淮南厲王子四人皆為列侯。賈生諫,以為患之興自此起矣。賈生數(shù)上疏,言諸侯或連數(shù)郡,非古之制,可稍削之。文帝不聽。
居數(shù)年,懷王騎,墮馬而死,無後。賈生自傷為傅無狀,哭泣歲馀,亦死。賈生之死時(shí)年三十三矣。及孝文崩,孝武皇帝立,舉賈生之孫二人至郡守,而賈嘉最好學(xué),世其家,與余通書。至孝昭時(shí),列為九卿。
太史公曰:余讀離騷、天問、招魂、哀郢,悲其志。適長(zhǎng)沙,觀屈原所自沈淵,未嘗不垂涕,想見其為人。及見賈生吊之,又怪屈原以彼其材,游諸侯,何國(guó)不容,而自令若是。讀服烏賦,同死生,輕去就,又爽然自失矣。
屈平行正,以事懷王。瑾瑜比潔,日月爭(zhēng)光。忠而見放,讒者益章。賦騷見志,懷沙自傷。百年之後,空悲吊湘。
2000種以上,主要分為“荷蘭種”和“羅馬種”兩類。前者屬正宗品種,絕大多數(shù)每株只長(zhǎng)1支花葶,體勢(shì)粗壯,花朵較大。而后者則多是變異的雜種,每株能著生二三支花葶,體勢(shì)幼弱,花朵較細(xì),多數(shù)消費(fèi)者喜購(gòu)荷蘭風(fēng)信子。峻茂:猶繁茂。
6、信芳。《離騷》:“茍余情其信芳”。如京劇表演藝術(shù)家周信芳。
7、圣哲、茂行。《離騷》:“夫維圣哲以茂行兮”。圣哲:具有超人的道德才智的人。茂行:德行充盛。
8、曼路。《離騷》:“路曼曼其修遠(yuǎn)兮,吾將上下而求索”。
9、望舒。《離騷》:“前望舒使先驅(qū)兮”。望舒:神話中為月駕車的神。如寫《雨巷》的詩(shī)人戴望舒。
10、陸離。《離騷》:“斑陸離其上下”。陸離:光輝燦爛的樣子。我們對(duì)于該詞的認(rèn)知多來自于成語“光怪陸離”,意指色彩繁雜、變化多端。
11、珵美。《離騷》:“覽察草木其猶未得兮,豈珵美之能當(dāng)”。珵:美玉。
12、云旗。《離騷》:“駕八龍之婉婉兮,載云旗之委蛇”。云旗:繪有云霓的旗幟。
===================九===歌===的===分===界===線===================
1、辰良。《九歌·東皇太一》:“吉日兮辰良”。“辰良”系“良辰”之倒文,指好時(shí)光。易被讀作“乘涼”。
2、玉鏘、璆鳴。《九歌·東皇太一》:“撫長(zhǎng)劍兮玉珥,璆鏘鳴兮琳瑯”。詩(shī)曰:佩玉鏘鏘。璆(音求):美玉。
3、安歌。《九歌·東皇太一》:“疏緩節(jié)兮安歌”。南越王尉佗者,真定人也,姓趙氏。秦時(shí)已并天下,略定楊越,置桂林、南海、象郡,以謫徙民,與越雜處十三歲。佗,秦時(shí)用為南海龍川令。至二世時(shí),南海尉任囂病且死,召龍川令趙佗語曰:“聞陳勝等作亂,秦為無道,天下苦之,項(xiàng)羽、劉季、陳勝、吳廣等州郡各共興軍聚眾,虎爭(zhēng)天下,中國(guó)擾亂,未知所安,豪杰畔秦相立。南海僻遠(yuǎn),吾恐盜兵侵地至此,吾欲興兵絕新道,自備,待諸侯變,會(huì)病甚。且番禺負(fù)山險(xiǎn),阻南海,東西數(shù)千里,頗有中國(guó)人相輔,此亦一州之主也,可以立國(guó)。郡中長(zhǎng)吏無足與言者,故召公告之。”即被佗書,行南海尉事。囂死,佗即移檄告橫浦、陽(yáng)山、湟谿關(guān)曰:“盜兵且至,急絕道聚兵自守!”因稍以法誅秦所置長(zhǎng)吏,以其黨為假守。秦已破滅,佗即擊并桂林、象郡,自立為南越武王。高帝已定天下,為中國(guó)勞苦,故釋佗弗誅。漢十一年,遣陸賈因立佗為南越王,與剖符通使,和集百越,毋為南邊患害,與長(zhǎng)沙接境。
高后時(shí),有司請(qǐng)禁南越關(guān)市鐵器。佗曰:“高帝立我,通使物,今高后聽讒臣,別異蠻夷,隔絕器物,此必長(zhǎng)沙王計(jì)也,欲倚中國(guó),擊滅南越而并王之,自為功也。”於是佗乃自尊號(hào)為南越武帝,發(fā)兵攻長(zhǎng)沙邊邑,敗數(shù)縣而去焉。高后遣將軍隆慮侯灶往擊之。會(huì)暑濕,士卒大疫,兵不能逾嶺。歲馀,高后崩,即罷兵。佗因此以兵威邊,財(cái)物賂遺閩越、西甌、駱,役屬焉,東西萬馀里。乃乘黃屋左纛,稱制,與中國(guó)侔。
及孝文帝元年,初鎮(zhèn)撫天下,使告諸侯四夷從代來即位意,喻盛德焉。乃為佗親冢在真定,置守邑,歲時(shí)奉祀。召其從昆弟,尊官厚賜寵之。詔丞相陳平等舉可使南越者,平言好畤陸賈,先帝時(shí)習(xí)使南越。乃召賈以為太中大夫,往使。因讓佗自立為帝,曾無一介之使報(bào)者。陸賈至南越,王甚恐,為書謝,稱曰:“蠻夷大長(zhǎng)老夫臣佗,前日高后隔異南越,竊疑長(zhǎng)沙王讒臣,又遙聞高后盡誅佗宗族,掘燒先人冢,以故自棄,犯長(zhǎng)沙邊境。且南方卑濕,蠻夷中間,其東閩越千人眾號(hào)稱王,其西甌駱裸國(guó)亦稱王。老臣妄竊帝號(hào),聊以自?shī)剩M敢以聞天王哉!”乃頓首謝,原長(zhǎng)為籓臣,奉貢職。於是乃下令國(guó)中曰:“吾聞兩雄不俱立,兩賢不并世。皇帝,賢天子也。自今以後,去帝制黃屋左纛。”陸賈還報(bào),孝文帝大說。遂至孝景時(shí),稱臣,使人朝請(qǐng)。然南越其居國(guó)竊如故號(hào)名,其使天子,稱王朝命如諸侯。至建元四年卒。
佗孫胡為南越王。此時(shí)閩越王郢興兵擊南越邊邑,胡使人上書曰:“兩越俱為籓臣,毋得擅興兵相攻擊。今閩越興兵侵臣,臣不敢興兵,唯天子詔之。”於是天子多南越義,守職約,為興師,遣兩將軍往討閩越。兵未逾嶺,閩越王弟馀善殺郢以降,於是罷兵。
天子使莊助往諭意南越王,胡頓首曰:“天子乃為臣興兵討閩越,死無以報(bào)德!”遣太子?jì)臊R入宿衛(wèi)。謂助曰:“國(guó)新被寇,使者行矣。胡方日夜裝入見天子。”助去後,其大臣諫胡曰:“漢興兵誅郢,亦行以驚動(dòng)南越。且先王昔言,事天子期無失禮,要之不可以說好語入見。入見則不得復(fù)歸,亡國(guó)之勢(shì)也。”於是胡稱病,竟不入見。後十馀歲,胡實(shí)病甚,太子?jì)臊R請(qǐng)歸。胡薨,謚為文王。
嬰齊代立,即藏其先武帝璽。嬰齊其入宿衛(wèi)在長(zhǎng)安時(shí),取邯鄲樛氏女,生子興。及即位,上書請(qǐng)立樛氏女為后,興為嗣。漢數(shù)使使者風(fēng)諭嬰齊,嬰齊尚樂擅殺生自恣,懼入見要用漢法,比內(nèi)諸侯,固稱病,遂不入見。遣子次公入宿衛(wèi)。嬰齊薨,謚為明王。
太子興代立,其母為太后。太后自未為嬰齊姬時(shí),嘗與霸陵人安國(guó)少季通。及嬰齊薨後,元鼎四年,漢使安國(guó)少季往諭王、王太后以入朝,比內(nèi)諸侯;令辯士諫大夫終軍等宣其辭,勇士魏臣等輔其缺,衛(wèi)尉路博德將兵屯桂陽(yáng),待使者。王年少,太后中國(guó)人也,嘗與安國(guó)少季通,其使復(fù)私焉。國(guó)人頗知之,多不附太后。太后恐亂起,亦欲倚漢威,數(shù)勸王及群臣求內(nèi)屬。即因使者上書,請(qǐng)比內(nèi)諸侯,三歲一朝,除邊關(guān)。於是天子許之,賜其丞相呂嘉銀印,及內(nèi)史、中尉、太傅印,馀得自置。除其故黥劓刑,用漢法,比內(nèi)諸侯。使者皆留填撫之。王、王太后飭治行裝重赍,為入朝具。
安歌:神態(tài)安詳?shù)爻琛S幸痪涮圃?shī)說:“安歌送好音”。
4、浩倡。《九歌·東皇太一》:“陳竽瑟兮浩倡”。“浩倡”又作“浩唱”,和上句“安歌”相對(duì)應(yīng)。取名時(shí)可改為“浩昌”。下文《九歌·少司命》中還有“浩歌”。令諸校屯豫章梅領(lǐng)待命。▼


a
援灌木,高
達(dá)3米。