mycat 不得不說的緣分

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?


1,愕然回首。它在燈火闌珊處

關于mysql集群中間件。曾經寫在應用程序里面,由開發者實現,在配置文件中面寫多個數據源,寫庫一個數據源,讀庫一個數據源,笨拙不高效,由于程序猿的差異化。效果并非特別理想。

?

后來。組織了開發者寫了一個自己主動識別讀寫的功能模塊接口,讓開發者調用,這樣能滿足特定場景的業務需求。可是適應性比較窄。

?

后來出了cobar,可是在高并發這里出殼了,后來在一次無意中的演講中,見到leader在介紹了mycat,于是眼前一亮。就是它了。不早不晚。在我特別須要的時候,就進入了我的生活。

?

2。人約黃昏后,月上柳梢頭

記得leader說過,看百集非誠勿擾記千句樂嘉戀愛寶典,不如妹子約起……

?

萬事開頭難。興趣攻其艱—>由于喜歡所以自然而然開始學習mycat。途中也認識了非常多mycat的同道門,眾所周知。對于我們這些非科班出生的。并且對理論研究不是那么深入的。實踐永遠是最好的最有效率的學習途徑。

?

于是有了第一次,還蠻簡單快捷方便的,從下載到安裝然后試用,大概不到30分鐘吧,如筆記所記錄:

?

mycat - 解開它神奇的面紗--:http://blog.csdn.net/mchdba/article/details/51155340? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

?

?

?

之后立即做了第一個練習,mycat路由轉發原理深度解析。對于此的理解是,mycat接到應用端過來的sql。它會去依據sql中 from后面的表名字,去配置schema.xml里面讀取當中的全部datanode資源,然后一個個去路由去嘗試請求,詳情見我的blog整理:

?

Mycat路由轉發原理深度解析:http://blog.csdn.net/mchdba/article/details/50616527? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

?

?

?

疑惑:假設做過數據庫的緩存或者對mysqllimit有印象的話。應該記得有這種場景,當limit 找到記錄后,就exit不會繼續遍歷以下未遍歷的數據記錄了。

不知道mycat能否夠做到這一點?貌似看debug日志是遍歷了全部的datenode節點了。

?

PS:做這2個我還是得心應手。由于有linux基礎,有mysql基礎,所以算是比較順利,好的開頭是成功的一半。更加堅信自己的信心和選擇了。

?


3,無奈是分離。victor大神

接下來開始接觸mycat比較show time的部分了,讀寫分離和主從切換,對于這2個場景。我接觸的時間蠻久了,可是實現的方式方法多種多樣,曾經讀寫分離用原始的刀耕火種,開發者在ibatis/mybatis里面寫死了寫庫連接和讀庫連接。之后keepalived+lvs,再之后用了f5的vip負載均衡配置。f5性能固然比較好,可是費用費用也不少的,所以對于互聯網已經中小型公司來說。這筆支出可不實惠啊。

?

而mycat通過配置readHost和writeHost來實現讀寫分離。里面有一些配置,比方:

balance為1:讓全部的readHost及備用的writeHost參與select的負載均衡。

?
switchType為2:基于MySQL主從同步的狀態決定是否切換。

?
heartbeat:主從切換的心跳語句必須為show slave status

?

在這里遇到配置的時候,遇到一些問題。在請教了victor大神之后。他給了我他的實現思路和方法,我參考之后,順利攻克了,把自己這部分的學習整理成了筆記,例如以下:

?

mycat讀寫分離與主從切換:http://blog.csdn.net/mchdba/article/details/50616534 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

?

?

PS:想要victor大神的聯系方式嗎,在以下留言評論區。留下你的email地址并標注victor,我發你email告訴你的。

?

blog源地址:http://blog.csdn.net/mchdba/article/details/51162243,謝絕轉載。


4,庖丁血牛之mycat的黑匣子

?

對于mycat來說,打開debug這個帕朵拉魔盒,一切一切真相都暴露在大眾面前,在這里你能夠看到select的整個舞蹈軌跡。也能夠看到全部的字符集的變換。千人千面萬般操作盡在mycat.log。所以學會分析mycat.log日志,全部的問題都不再是問題,對于此我深有體會,例如以下的整理:

?

Mycat黑匣子:http://blog.csdn.net/mchdba/article/details/51160495? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

?

?

?

5,分紛紛,生活的主旋律

分析了mycat的黑匣子后。對于mycat背后的邏輯以及有了一定的深刻理解了,如今要進階了,做更加難的事情了,這是分布式集群的重大特征。在業務量爆炸式增長的場景中。就須要提前考慮依據業務進行分片。在分片的學習中,也得到了victer大神和山狼的的指點,遺憾的是后來山狼由于工作忙碌。交流的越來越少了,而victor大神一直常常交流中,對于分片的嘗試。整理在以下:

?

Mycat高可用分片er分片的2種場景:http://blog.csdn.net/mchdba/article/details/50655304? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

Mycat連續分片-自己定義數字分片:http://blog.csdn.net/mchdba/article/details/50656337

Mycat連續分片-按日期分片:http://blog.csdn.net/mchdba/article/details/50656478

Mycat離散分片-枚舉:http://blog.csdn.net/mchdba/article/details/50656478

Mycat離散分片-程序指定的分區分片:http://blog.csdn.net/mchdba/article/details/50656500

?

?

在分片的場景中。另一種業務類型,就是一個分片故障了,怎樣遷移到新的分片,這個思路實現例如以下:

?

Mycat分片中高速遷移思路:http://blog.csdn.net/mchdba/article/details/50939614? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

Mycat分片中平滑遷移實施過程:http://blog.csdn.net/mchdba/article/details/50991649

?

?

6,瑕不掩瑜。mycat的斑點

Mycat有諸多長處,可是也有它不足的地方,比方分頁、跨事務、存儲過程、對db2、mongodb的支持等等,這些都須要了解熟悉。以免在使用的時候給別人挖坑,對這些方面,我們須要了解到實現的細節,然后再用案例去驗證,分析問題癥結所在,假設有java代碼coding能力,甚至能夠改動完好這些不足。對此有整理例如以下:

?

Mycat分頁慢解惑、跨事務解析、注解調用存儲過程:http://blog.csdn.net/mchdba/article/details/50719120? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

?

?

?

7,健壯持久,多多益善

在互聯網分布式應用中,最重要的就是高可用了,高可用能保證應用的持續可用性,這樣能7*24,而mycat也有相似的集群架構,這是了解mycat深入mycat必須的歷程:

?

Mycat集群實現:http://blog.csdn.net/mchdba/article/details/50867885? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

?

?

為了mycat應用部署的健壯持續,我們須要多mycat進行全方位的監控,有了這些監控數據。我們能夠了解到mycat執行的信息,對于優化mycat非常實用,關于這個我有整理例如以下:

?

Mycat性能採集:http://blog.csdn.net/mchdba/article/details/50727099? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

?

?

了解到這里,我們就知道,在部署分布式集群架構之前,肯定須要進行各種壓力測試,來了解mycat的閥值以及它能達到的性能極限。能支撐多少高并發、tps、qps等等。那么這里就有一個自帶的工具能夠達到我們的效果:

?

監控mycat壓力測試的性能曲線:http://blog.csdn.net/mchdba/article/details/51050008? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

?

?

PS:事實上走到這里。行程都是蠻輕松的,不太勞苦,有點小小得意了,僅僅是常言道人無遠慮必有近憂,接下來就碰到問題了。

?


8。衣帶漸寬終不悔,為伊消得人憔悴

第一道坎,連接不上oracle數據源:

在載入oracle數據源的時候,須要把oracle的jar包放到mycat安裝文件夾下,通常是用這個ojdbc14.jar。放到/usr/mysql/mycat/lib文件夾以下。然后又一次載入下mycat生效。

?

第二道坎,中文亂碼:

在熟悉這個里面。我遇到坎了。是最富盛名的中文亂碼問題。oracle里面字符集是gbk,mysql里面是utf8,而mycat也是utf8。對于這種差異,怎樣操作。我搜索了非常久,沒有找到合適的方案,忙到半夜11點時候,咨詢leader的時候,遇到了leader的一句神回復“設置成utg”,然后我設置在了mycat的配置文件server.xml里面:

[root@oracle_standby ~]# vim /usr/local/mycat/conf/server.xml ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

<!DOCTYPE mycat:server SYSTEM "server.dtd">

<mycat:server xmlns:mycat="http://org.opencloudb/">

??????? <system>

???? ???<property name="charset">utg</property>

……

結果我繼續調試了,發現還是亂碼。然后認為leader指點的應該沒有錯。可能是別的問題導致的,繼續調試重組mycat各種情況調試,1個半小時過去后。還是亂碼,然后引發了牛人靜哥出來了。她說是字符集設置問題。并且我的設置utg是不正確的。然后我頓然醒悟,最終意識到leader的神回復utg是錯誤的,經驗總結不能100%相信權威啊,由于萬一不小心會被他帶進坑里,結果我不得已回頭又一次整理思路。而那時已經1:00了,窗外夜沉如水,我去沖了個涼水澡。回來繼續研究。

?

泠靜下來后,整理思路。再奮戰了1個小時后,搞定了。思路整理例如以下:

Mycat對于數據庫而言就是client,一般來講client字符編碼與數據庫服務端一致就不會有什么問題,或者是嚴格超集,保證插入到數據庫不因轉碼而丟失。client、系統終端、數據庫三者字符庥得協調,否則不一致的話,會有字符集轉換的問題,有時候。顯示正確的,但不一定在數據庫就保存正確,或者保存到數據庫的數據編碼正確,沒準顯示為亂碼。

這就意味著,在oracle里面是gbk或者latin1啥都沒有關系,僅僅要做好以下3點:

(1)。在遷移到mysql里面。在mycat平臺上從oracle導出時候字符集設置為utf8

(2),在mycat平臺上導入到mysql字符集也要設置為utf8

(3), 然后在mycat平臺上查看數據也要設置字符集為utf8

做好了以上3點,三而合一,這樣就能正常顯示中文了。

?

Mycat平臺上實現oracle遷移到mysql:http://blog.csdn.net/mchdba/article/details/50995059? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

?

?

第二天鬧鐘換我起床,睡眼朦朧,鏡中熊貓眼。^_^

?

?

9。奇女子靜哥

看到她的名字“靜哥”,我不由得自主想起了一首流傳甚久的歌曲“我不是黃蓉我不懂武功我僅僅要靜哥哥完美的愛情……”,這首歌曲是不是非常平民化非常雨非常有喜感啊,反正我認為蠻接地氣的哈,歌曲地址是:http://bd.kuwo.cn/yinyue/90334?

from=baidu。由于作為金庸迷,對這個太敏感了,所以對她印象非常深刻,并且她mycat技術非常好口才也好,活脫脫一個現代版小黃蓉啊,并且據leader發的照片來看,確實是標準的江南美女。并且難得的是她剛工作不久還是單身。

?

SO說道在這里,大家都懂了吧。有想認識她學習mycat技術或者準備拓展mycat業務的,在文后評論區留下你的email地址并標注靜哥。我會給你發email的告訴聯系方式的。

?

?

10。瑞士軍刀、親親山莊、中國開源第一門派

到此位置,mycat的重要功能點基本完畢了,然后就是師傅臨進門修行在個人了,哦對了,還有Mycat最后一個重要點,mycat-eye,這個是蠻實用的,not only formyat,當然眼下還是一個半成品。夢想是成為mysql伴侶,僅僅要用了mysql,就離不開mycat-eye,當然夢想是美好。現實是須要我們大家一起去實踐去完好它,雖然如此。mycat-eye還是有它獨特的閃光點:

?

Mycat瑞士軍刀:http://blog.csdn.net/mchdba/article/details/51059547? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

?

最后,介紹下,mycat的帶路人。leader-us。看名字。就知道他是mycat的發起人,架構實力非常深厚,口才也非常好,眼下給我感覺是技術領域中營銷實力最強的、映像領域中技術實力最強的。

他能看到mycat的市場并且開始運作成立mycat高端服務公司,是非常有魄力的。

?

所以他有成為相似馬云那樣的企業家的潛質的,他的夢想是成立親親山莊,做高端技術服務和支持,成立咨詢公司,并且做到中國的apache,成為國內開源界的No1,當然了個人實力有限,所以須要大家一起努力。眼下開啟眾籌活動,起步是一人5W。大概估計征集70幾個人。啟動資金有300W到400W左右,他就能夠全職參與并運營親親山莊了。

?

親親山莊的選址是廣州到珠海之間的海島上,風景宜人,適合居住生活。

?

11。尾聲。左兄與任正非、leader-us與馬云

新成立的公司里面。有個左兄,非常傳奇,大一在大學入伍,然后復員專業。來上海學IT。年紀輕輕,睡在地鐵站,苦心專研數據庫、系統、中間件,如今已經成為了業界大牛,上海地區mycat標桿人物,和他接觸過,膽大心細臉皮厚,并且對朋友和身邊人仗義。深深懂得利益均沾的道理并且也言行一致。認為他有任年輕時候的影子。未來成就無限。

?

然后就是leader-us。他有馬云的口才。還有王堅的技術功底,能夠說能說服非常多人,并且這次眾籌選擇的對象也非常準確,選擇的是在北上廣深一線城市稅后1.5W的從業人員和南京武漢重慶福州二線城市稅后1W的從業人群。對市場目標定位準確,所以leader-us成功的概率非常大,這也是我和左兄還有非常多朋友決定增加這個創業團隊的主要原因吧。

?

眼下眾籌已經結束,資金已經到位,已經開始開展mycat高端技術支持服務。大家有須要的,能夠在以下評論區留下email地址,我會第一時間聯系回復你的,謝謝。

轉載于:https://www.cnblogs.com/clnchanpin/p/7363383.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/540745.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/540745.shtml
英文地址,請注明出處:http://en.pswp.cn/news/540745.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python創建空元組_用Python創建空元組

python創建空元組Python | 空元組 (Python | empty tuple) In python, we can also create a tuple without having any element. An empty tuple is created using a pair of round brackets, (). 在python中&#xff0c;我們也可以創建一個沒有任何元素的元組 。 使用一對圓括…

共享馬扎的火爆,原來是一場營銷!

如今&#xff0c;人們的生活仿佛已經被“共享化”&#xff1a;上班有共享單車、睡覺有共享床鋪、商場有共享充電寶、去機場有共享巴士……好像除了男女朋友是自己的&#xff0c;其他都要共享了&#xff01;哎&#xff0c;不對&#xff01;前些日子&#xff0c;竟然還真有了共享…

什么是CDP(連續數據保護)?

CDP&#xff1a;連續數據保護 (CDP: Continuous Data Protection) CDP is an abbreviation of "Continuous Data Protection". It is also called as a real-time backup, is a system of data storage that backs up data in an organization or enterprise on a sy…

Git實戰(二)原理

上次的博文Git實戰&#xff08;一&#xff09;版本號控制概述中我們簡介了一下版本號控制系統的概念&#xff0c;重點對版本號控制的三種類型進行了分析和對照&#xff0c;從本篇博文開始我們進入Git的世界&#xff0c;首先介紹一下Git實現版本號控制的原理。 Git與SVN等其它版…

什么是html的混雜模式_HTML的完整形式是什么?

什么是html的混雜模式HTML&#xff1a;超文本標記語言 (HTML: Hyper Text Markup Language) HTML is an abbreviation of Hypertext markup language. Hypertext markup language is a text based standard markup language used to create web pages and design documents whi…

PHP-Manual的學習----【語言參考】----【類型】-----【對象】

Object 對象1.對象初始化要創建一個新的對象 object &#xff0c;使用 new 語句實例化一個類&#xff1a; class foo{ function do_foo(){ echo "1111"; }}$bar new foo;echo $bar->do_foo();輸出&#xff1a;1111注解&#xff1a;一個類可以初始化…

kotlin 兩個數字相加_Kotlin程序交換兩個數字

kotlin 兩個數字相加Given two numbers, we have to swap them. 給定兩個數字&#xff0c;我們必須交換它們。 Example: 例&#xff1a; Input:First number: 10Second number: 20Output:First number: 20Second number: 10To swap two numbers – here we are using third v…

Kotlin入門(14)繼承的那些事兒

上一篇文章介紹了類對成員的聲明方式與使用過程&#xff0c;從而初步了解了類的成員及其運用。不過早在《Kotlin入門(12)類的概貌與構造》中&#xff0c;提到MainActivity繼承自AppCompatActivity&#xff0c;而Kotlin對于類繼承的寫法是“class MainActivity : AppCompatActiv…

在Scala中列出| 關于Scala列表的完整教程

Scala | 清單 (Scala | List) List in Scala is a collection that stores data in the form of a liked-list. The list is an immutable collection which means the elements of a list cannot be altered after the list is created. Lists are flexible with data types, …

MySQL單機多實例部署詳解之------多實例分別定義不同的配置文件

mysql多實例安裝---分別定義不同的配置文件1.安裝MySQL需要的依賴包[rootMySQL ~]# yum install ncurses-devel libaio-devel cmake -y[rootMySQL ~]# rpm -qa ncurses-devel libaio-develncurses-devel-5.7-4.20090207.el6.x86_64libaio-devel-0.3.107-10.el6.x86_642.安裝編譯…

javascript模塊_JavaScript中的模塊

javascript模塊JavaScript模塊 (JavaScript Modules) One of the key features of programming fundamentals is breaking down your code into fragments. These fragments depending on its functionality have been coined various terms like functions, components, modul…

在mac上安裝Docker

1.進入一下地址進行下載docker https://download.docker.com/mac/stable/Docker.dmg 進入后進行下載后進行安裝 2.將其拖動到Appliaction中即可 3.第一打開會有一個這樣的歡迎頁面 3.檢查是否安裝完成 出現上圖所示標示安裝完成了

composer 檢查鏡像_檢查N元樹中的鏡像

composer 檢查鏡像Problem statement: 問題陳述&#xff1a; Given two n-ary trees, the task is to check if they are mirrors of each other or not. 給定兩個n元樹&#xff0c;任務是檢查它們是否互為鏡像。 Note: you may assume that root of both the given tree as …

浪潮各機型前面板指示燈含義

NF560D2 NF3020M2 NF5020M3 NF5140M3 NF5212H2 NF5220 NF5224L2 NF5240M3 NF5270M3 NF5280M2 NF5280M3 NF5540M3 NF5580M3 NF8420M3 NF8520 NF8560M2 說明&#xff1a;轉浪潮官網。

python dll 混合_Python | 條線混合圖

python dll 混合In some of the cases, we need to plot a bar-line hybrid plot. This plot helps in a better understanding of dynamics as well as the relative magnitude of each point in the plot. Bar-Line Hybrid Plots are mostly used for the representation of …

測試八 賽后感受

測試八 當我打開T1的時候&#xff0c;就沒有往下看題目了&#xff0c;主要是發現T1就是之前做過&#xff0c;而且我也看過題解的題目&#xff0c;接著就開始鉆研&#xff0c;當然&#xff0c;也沒什么好鉆研的&#xff0c;大概思路還是知道的&#xff0c;再寫寫數據就已經很清晰…

推薦五個免費的網絡安全工具

導讀&#xff1a; 在一個完美的世界里&#xff0c;信息安全從業人員有無限的安全預算去做排除故障和修復安全漏洞的工作。但是&#xff0c;正如你將要學到的那樣&#xff0c;你不需要無限的預算取得到高質量的產品。這里有SearchSecurity.com網站專家Michael Cobb推薦的五個免費…

bios部署模式審核模式_BIOS的完整形式是什么?

bios部署模式審核模式BIOS&#xff1a;基本輸入輸出系統 (BIOS: Basic Input Output System) BIOS is an abbreviation of the Basic Input Output System. In the beginning, when you first set on your computer, the first software which starts run by the computer is &…

day04-裝飾器

一、裝飾器定義 1&#xff09;裝飾器&#xff1a;本質是函數。 2&#xff09;功能&#xff1a;用來裝飾其他函數&#xff0c;顧名思義就是&#xff0c;為其他的函數添加附件功能的。 二、原則 1&#xff09;不能修改被裝飾函數的源代碼 2&#xff09;不能修改被裝飾函數的調用方…

c 語言bool 類型數據_C ++中的bool數據類型

c 語言bool 類型數據In C programming language, to deal with the Boolean values – C added the feature of the bool data type. A bool variable stores either true (1) or false (0) values. 在C 編程語言中&#xff0c;為了處理布爾值– C 添加了bool數據類型的功能 。…