面試 第十三章 中高階程式設計師面試

2021-09-26 21:06:52 字數 1522 閱讀 7606

這個我提出了四種方案,好像都沒有達到要求,沒有辦法保證一秒溢位,個人認為應該是記憶體分配方向可以考慮。

第一種:改配置,調小堆的大小,迴圈建立物件

第二種:殺死gc執行緒不讓它**,迴圈建立物件具有強引用

第三種:計算乙個整數的階乘,計算的整數很大、很大的時候,使用遞迴演算法

第四種:同一時間,多執行緒建立強引用物件

事務的基本屬性(acid)

如果不對事務進行併發控制,可能會產生四種異常情況:

為了解決併發控制可能產生的異常問題,資料庫定義了四種事務的隔離級別,sql標準定義了4類隔離級別(由低到高):

事物的傳播屬性

主要有五個角色/核心元件,分為是container(容器)、provider(服務的提供方)、registry(註冊中心)、consumer(服務的消費方)、monitor(監控中心)。

容器:主要負責啟動、載入、執行服務提供者

註冊中心:註冊中心只負責位址的註冊和查詢

監控中心:監控中心負責統計各服務呼叫次數、呼叫時間

分布式框架的核心是rpc框架,rpc框架的核心是rpc協議,dubbo 支援的rpc協議,預設協議、採用了單一長連線和nio非同步通訊、傳輸資料量小、使用執行緒池併發處理請求,能減少握手和加大併發效率

負載均衡演算法

dubbo提供的負載均衡:

說明:dubbo的負載均衡是服務層面的,而nginx的負載均衡還在http請求層面上,完全不同。

nginx的負載均衡:

載入並初始化類建立物件

載入(存在繼承時):先靜後非,先父後子,先塊後器

初始化:

建立物件:

1、在堆區分配物件需要的記憶體

分配的記憶體包括本類和父類的所有例項變數,但不包括任何靜態變數

2、對所有例項變數賦預設值

將方法區內對例項變數的定義拷貝乙份到堆區,然後賦預設值

3、執行例項初始化**

初始化順序是先初始化父類再初始化子類,初始化時先執行例項**塊然後是構造方法

面試 第十三章 中高階程式設計師面試

這個我提出了四種方案,好像都沒有達到要求,沒有辦法保證一秒溢位,個人認為應該是記憶體分配方向可以考慮。第一種 改配置,調小堆的大小,迴圈建立物件 第二種 殺死gc執行緒不讓它 迴圈建立物件具有強引用 第三種 計算乙個整數的階乘,計算的整數很大 很大的時候,使用遞迴演算法 第四種 同一時間,多執行緒建...

高階程式設計師面試寶典

說一下大型 架構演變過程 1.初始階段,這個階段可能應用伺服器 檔案伺服器 資料庫所有的資源都在同一臺伺服器上 2.應用伺服器和資料庫伺服器拆分 3.使用快取改善 的效能 貌似網際網路架構中,快取是離不開的話題了 4.使用應用伺服器的集群來改啥 的併發處理能力 不過一般是同構的集群,偽集群了 資料庫...

Mysql學習 第十三章 高階聯結

sql 除了可以對列名和計算字段使用別名,還允許給表名起別名。縮短 sql語句 允許在一條 select 語句中多次使用相同的表。select cust name,cust contact from customers as c,orders as o,orderitems as oi where ...