現在位置: 首頁 > 雲計算 > 文章
2020年02月21日 雲計算 ⁄ 共 3179字 評論關閉
  自從Docker在2013年初上線以來,就與程序員及系統管理員之間產生了一種愛恨交加的奇妙關係。雖然與我交談過的一些經驗豐富的的開發人員都非常不喜歡容器化(稍後會詳細介紹), 但是為什麼許多大公司,包括eBay、Twitter、Spotify和Lyft在內,都在他們的生產環境中採用了Docker呢?   Docker究竟是做什麼的呢?   不知道您是否曾使用過VMware、VirtualBox、Parallels或任何其他的虛擬化軟體呢?Docker和這些軟體差不多(儘管...
閱讀全文
2020年02月20日 雲計算 ⁄ 共 2904字 評論關閉
  Fatal Error:Allowed memory size of xxxxxx bytes exhausted,相信大家在伺服器上會經常看到這個報錯,這個究竟是什麼意思?要如何解決呢?   伺服器很多自動任務的php腳本佔用服務內存過多,並且程序不在運行了。   解決方法:   在運行PHP程序,通常會遇到「Fatal Error:Allowed memory size of xxxxxx bytes exhausted」的錯誤, 這個意味著PHP腳本使用了過多的內存,並超出了系統對其設置的允許最大內存。解決這...
閱讀全文
2020年02月19日 雲計算 ⁄ 共 6004字 評論關閉
  和 Flexvolume 類似,CSI 也是為第三方存儲提供數據卷實現的抽象介面。   有了 Flexvolume,為何還要 CSI 呢?   Flexvolume 只是給 kubernetes 這一個編排系統來使用的,而 CSI 可以滿足不同編排系統的需求,比如 Mesos,Swarm。   其次 CSI 是容器化部署,可以減少環境依賴,增強安全性,豐富插件的功能。我們知道,Flexvolume 是在 host 空間一個二進位文件,執行 Flexvolum 時相當於執行了本地的一個 shell 命令,...
閱讀全文
2020年02月19日 雲計算 ⁄ 共 2712字 評論關閉
  Flexvolume 是 Volume Plugins 的一個擴展,主要實現 Attach/Detach/Mount/Unmount 這些介面。我們知道這些功能本是由 Volume Plugins 實現的,但是對於某些存儲類型,我們需要將其擴展到 Volume Plugins 以外,所以我們需要把介面的具體實現放到外面。   我們可以看到,Volume Plugins 其實包含了一部分 Flexvolume 的實現代碼,但這部分代碼其實只有一個 「Proxy」的功能。   比如當 AD Controller 調用插件的一個 Atta...
閱讀全文
2020年02月19日 雲計算 ⁄ 共 7987字 評論關閉
  容器存儲是 Kubernetes 系統中提供數據持久化的基礎組件,是實現有狀態服務的重要保證。Kubernetes 默認提供了主流的存儲卷接入方案(In-Tree),同時也提供了插件機制(Out-Of-Tree),允許其他類型的存儲服務接入 Kubernetes 系統服務。本文將從 Kubernetes 存儲架構、存儲插件原理、實現等方面進行講解,希望大家有所收穫。   Kubernetes 存儲體系架構   引例: 在 Kubernetes 中掛載一個 Volume   首先以一個 Volume ...
閱讀全文
2020年02月19日 雲計算 ⁄ 共 1082字 評論關閉
  Charles 是一款運行在 PC 端的 Web 代理工具,它支持 Windows,Mac,Linux 操作系統。通過配置代理,Charles 可以記錄和展示我們的設備和 Internet 之間交流的所有數據。因此使用它我們可以調試分析我們的應用程序介面,抓取介面傳輸的數據。   Charles主要具備如下特色功能:   支持 Https 協議;   限制帶寬,模擬延遲效果;   支持 JSON 和 XML 格式化展示效果;   樹形展示數據消息;   重發網路請求;   更改...
閱讀全文
2020年02月19日 雲計算 ⁄ 共 830字 評論關閉
  有一天隔壁組的小王灰頭土臉的跑過來,問我說:「李哥,你會設計微服務網關係統嗎?」。我一愣,小王怎麼突然問這麼抽象的問題,關鍵是我們最近也沒有這樣的需求。吃午飯的時候,在我旁敲側擊的追問下,小王招供了,原來小王偷偷跑去阿里面試了。技術一面挺順利的,結果在技術二面的時候卡住了,面試官問了小王關於網關的問題。對話大致如下:   面試官:「你們的微服務有統一的網關嗎?」。   小王:「有呀,我們使用了 Sprin...
閱讀全文
2020年02月19日 雲計算 ⁄ 共 1718字 評論關閉
  你已經知道管程 synchronized 是通過鎖對象所關聯的 Monitor 對象的計數來標識線程對鎖的佔有狀態,那麼你知道 ReentrantLock 是如何來控制鎖的佔有狀態嗎?   Lock 鎖採用了與 Monitor 對象計數完全不同的一種方式,它依賴了並發包中的 AbstractQueuedSynchronizer (隊列同步器簡稱 AQS ) 來實現在多線程情況下對鎖狀態的控制。那麼 AQS 是如何保證在多線程場景中鎖狀態可以正常控制呢。   主要使用了如下 3 個技術點:...
閱讀全文
2020年02月19日 雲計算 ⁄ 共 1094字 評論關閉
  ConcurrentHashMap 是如何進行管理它的容量的,也就是當我們調用它的 size 方法的時候發生了什麼?   畢竟是要支持並發,ConcurrentHashMap 的擴容操作比較複雜,我們將從以下幾點來帶討論一下它的擴容。   觸發擴容   1. 添加新元素後,元素個數達到擴容閾值觸發擴容。   2. 調用 putAll 方法,發現容量不足以容納所有元素時候觸發擴容。   3. 某個槽內的鏈表長度達到 8,但是數組長度小於 64 時候觸發擴容。  ...
閱讀全文
2020年02月18日 雲計算 ⁄ 共 2330字 評論關閉
  生成模型和遷移文件   php artisan make:model Models/Shoping/Category -m   app/Models/Shoping/Category.php   < ?php   namespace App\Models\Shoping;   use Encore\Admin\Traits\AdminBuilder;   use Encore\Admin\Traits\ModelTree;   use Illuminate\Database\Eloquent\Model;   /**   *   * Class Category   * @package App\Models\Shoping   */   class Category extends M...
閱讀全文