直接技術(shù)總監(jiān)面試,一對一。當時有點沒準備好,總監(jiān)根據(jù)簡歷上面的項目情況進行提問。大望路soho現(xiàn)代城3層,結(jié)算平臺中心部門。
面試官問的面試題:宜信普惠信息咨詢(北京)有限公司java高級開發(fā)工程師面試題
1、描述一下aio,bio,nio,ioio是基于輸入輸出流形式,以字節(jié)為單位處理數(shù)據(jù)。nio有2個基本組件,通道channel和緩沖buffer,是以內(nèi)存塊為基本單位處理數(shù)據(jù),nio針對每一種基本數(shù)據(jù)提供了對應(yīng)的Buffer,例如ByteBuffer,IntBuffer。其他的我直接說不了解。2、了解哪些緩存技術(shù)ecache、Memcached、Redis,沒說Jbosscache、osCache等,只按種類說了幾個。3、ecache、Memcached、Redis 這三者的區(qū)別ecache是本地級緩存,只能緩存在和服務(wù)器的同一臺機器的內(nèi)存中,Memcached實現(xiàn)了分布式緩存,其數(shù)據(jù)可以緩存在多臺機器上面,但緩存的數(shù)據(jù)之間不能同步,Redis實現(xiàn)了緩存的數(shù)據(jù)會周期性的進行同步,同時會把數(shù)據(jù)的修改操作記錄在相關(guān)的文件中,它可以說是memcached的一個升級。4、Redis是基于什么形式緩存數(shù)據(jù)的,可以緩存什么類型的數(shù)據(jù),它的key如何生成的。 基于Key-Value形式存儲數(shù)據(jù),可以緩存的數(shù)據(jù)種類比memdcache還多,比如String、對象、集合等,這些都是一問一答的,等到問key是如何生成的,腦子一發(fā)熱,蹦的就說了不知道。其實我應(yīng)該說大概是根據(jù)key的hashcode方法,生成對應(yīng)的內(nèi)存地址等。接著又問傳輸對象的話,對象需要序列化嗎?我馬上說了需要,然后又問在不同的緩存機器如何傳輸對象,我說了幾個:rmi,webservice、jms(mq)..........5、講講HTTP協(xié)議平時天天看著這個,面試時真不知道說什么,只說了些:超文本傳輸協(xié)議,一般用于BS架構(gòu)系統(tǒng)。 然后又問是不是安全,我直接說不是安全的,安全的是HTTPS,基于SSL擴展的協(xié)議。然后面試官就說你不太了解HTTP是吧。6、spring的兩種事務(wù)其實我該回答是編程式以及聲明式事務(wù)的,但是當時只說了現(xiàn)在一般用基于注解形式的事務(wù)或者基于aop配置形式的事務(wù)。7、 用過哪些容器tomcat、weblogic、websphere,然后問你們的tomcat有負載均衡嗎?我直接說項目中用的weblogic,如果tomcat需要負載均衡,可以利用terracotta機構(gòu),它實現(xiàn)了分布式緩存、分布式session等。8、寫過多線程嗎大概說了下以前做過的項目,利用jdk底層提供的調(diào)度框架Executor的newFixedThreadPool(int count) 創(chuàng)建一定數(shù)量的線程池,然后每次新建的處理任務(wù)的線程在這個執(zhí)行器中執(zhí)行,利用executor進行管理和調(diào)度。然后通過定義一個變量來統(tǒng)計線程數(shù)量,并利用重入鎖來讀寫該變量,當達到設(shè)置的最大線程數(shù)量,就給商戶返回系統(tǒng)繁忙,并沒有把當前請求放入隊列中。面試官好像不太信,直接返回系統(tǒng)繁忙好像是有點不太靠譜。9、了解ConcurrentHashMap嗎?只說了是專門用于并發(fā)的,實際項目中沒有用過,一般利用ThreadLocal去管理可能涉及線程安全的變量。然后問了這種方式什么區(qū)別。我只說了threadlocal是基于犧牲空間的形式,給每個線程維護一個變量的副本。哎,其實很明顯,兩者的設(shè)計用途根本不同 ,當時沒好好說。ConcurrentHashMap性能肯定由于利用鎖synchronized。10、項目中遇到的難題,怎么解決的我打概說了個并發(fā)問題,導(dǎo)致給客戶生成多個賬號問題。然后我就說把所有的請求都放入隊列中,串行執(zhí)行。接著又問你一般利用那些Queue我只說了BlockingQueue和ConcurrentLinkedQueue,然后問我這兩者之間的區(qū)別我只說了ConcurrentLinkedQueue是用在大數(shù)據(jù)高并發(fā)場合的, 然后又問為什么你還選擇用阻塞隊列BlockingQueue,你知道ConcurrentLinkedQueue的確點嗎?我直接說不知道。11、使用過頁面緩存嗎?直接說木有。12、熟悉CAS算法嗎?直接說不了解。13、隨便寫個快速排序、冒泡排序個整形數(shù)組、或者倒序輸出我隨便寫了個,發(fā)現(xiàn)寫錯了,倒序輸出這個簡單,不用說了,我說了用棧,先入后出,倒序了。14、jvm了解嗎只是看過一些理論,沒有實際操作過。其實我當時想從jvm的父類全盤委托機制開始說,到字節(jié)碼文件完整性檢查、有效性檢查、直接引用代替符號引用,初始化變量等,性能監(jiān)控JDK命令jconsole,以及JProfile、以及gc等。不過面試官直接說了個行,沒要求我說說,我就沒說。15、就是說說項目情況,技術(shù)架構(gòu)、以及代碼結(jié)構(gòu)簡單說了下,沒用什么管理代碼,無非是ant等吧。就記得這么多了,然后說了下他們項目的兩個方向,讓我回去等消息,說會盡快給通知。出門他想跟我握手,我又搖手拜拜的意思,我意會到要握手準備的時候,他又搖手,尷尬的狠啊。^_^感覺有些東西還不是很透徹,還需要多看看書。
收起
人事面試問學(xué)歷、住址、興趣愛好;技術(shù)考官面試,沒有筆試,全部是面對面問答;最后是總監(jiān)面試談發(fā)展方向和薪資。
面試官問的面試題:宜信普惠信息咨詢(北京)有限公司java高級開發(fā)工程師面試題
1 jvm分類、計算器、性能優(yōu)化;
2 redis的持久化及memcache區(qū)別。
3 mysql 索引機制及sql優(yōu)化。
4 mq的對比
5 項目框架及項目經(jīng)歷
整體感覺不錯,就是離家太遠,公司整體水平都比較高,用的東西都比較前沿,面試官很和藹
面試官問的面試題:宜信普惠信息咨詢(北京)有限公司軟件測試工程師面試題
數(shù)據(jù)哭,自動化,支付交易詳情,第三方支付架構(gòu),賬戶架構(gòu),請結(jié)算設(shè)計架構(gòu),工作流程,測試細則
(共876條) 中信證券
(共827條) 中信證券
(共548條) 中國平安保險(集團)股份有限公司
(共51條) 華福證券
(共25條) 捷信
(共22條) 上海普蘭金融服務(wù)有限公司
(共9條) 北京大學(xué)人民醫(yī)院
(共4條) 山東齊星鐵塔科技股份有限公司
(共6條) 神華神東煤炭集團公司
(共5條) 中國人壽保險分公司
(共4條) 深圳正弦電氣有限公司
(共5條) 紫光云技術(shù)有限公司