自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

搜狗12306專(zhuān)版瀏覽器“定時(shí)搶票”功能技術(shù)解析

系統(tǒng) 瀏覽器
春運(yùn)來(lái)臨,12306網(wǎng)站搶票軟件成為全民關(guān)注的焦點(diǎn),鐵道報(bào)方面表示,這些搶票插件給12306網(wǎng)站帶來(lái)額外的負(fù)擔(dān)。怎樣才能讓12306服務(wù)器“減負(fù)”,又可以買(mǎi)到回家的票呢?接下來(lái)請(qǐng)看詳盡的搜狗12306專(zhuān)版瀏覽器“定時(shí)搶票”功能技術(shù)解析報(bào)告。

  近日,春運(yùn)12306網(wǎng)站搶票軟件成為全民關(guān)注的焦點(diǎn),對(duì)于有傳聞稱(chēng)鐵道部找工信部要求各大瀏覽器廠商停止開(kāi)發(fā)12306刷票工具一事,搜狗瀏覽器官方表示,截止目前,搜狗公司從未接到來(lái)自任何有關(guān)部門(mén)的“叫停”通知,也未被“約談”,搜狗12306專(zhuān)版瀏覽器和搜狗瀏覽器12306搶票插件一直正常服務(wù),未受影響。請(qǐng)網(wǎng)友們放心下載使用。

  搜狗12306專(zhuān)版瀏覽器具有獨(dú)創(chuàng)的“定時(shí)搶票”功能,能在放票的那一瞬間,也就是放票量最大的時(shí)候大幅提高用戶(hù)訂票的成功率,而且可以讓12306服務(wù)器“減負(fù)”,安全可靠。為啥這樣說(shuō),接下來(lái)請(qǐng)看詳盡的搜狗12306專(zhuān)版瀏覽器“定時(shí)搶票”功能技術(shù)解析報(bào)告。

  搜狗12306專(zhuān)版瀏覽器“定時(shí)搶票”功能技術(shù)解析

  在看一般人都看不懂的代碼分析之前,我們先來(lái)簡(jiǎn)單了解一下搜狗12306專(zhuān)版瀏覽器定時(shí)搶票功能的3大優(yōu)勢(shì)。了解有啥優(yōu)勢(shì),我們才知道代碼的意義。

  • 對(duì)于用戶(hù)來(lái)說(shuō),“定時(shí)搶票”功能可以在放票的一瞬間開(kāi)始搶票,此時(shí)是票量最大的時(shí)候,相對(duì)于“自動(dòng)刷票”功能,可以大幅提升訂票的成功率;
  • 對(duì)于12306網(wǎng)站,“定時(shí)搶票”功能可以減輕12306網(wǎng)站的負(fù)載,這是以禮相待之道。
  • 對(duì)于其他搶票瀏覽器來(lái)說(shuō),“定時(shí)搶票”功能是目前他們并不具備的功能,搜狗是在充分考慮到“如何大幅提升用戶(hù)的訂票成功率”以及“減輕12306網(wǎng)站的負(fù)載”的情況下才推出這個(gè)功能。

  代碼分析:

  通過(guò)校準(zhǔn)時(shí)間、防踢出、放票瞬間搶票三個(gè)步驟幫助用戶(hù)在每次放票的瞬間訂票,相對(duì)于刷新余票退票來(lái)說(shuō),放票時(shí)的票量最大,因此用戶(hù)訂票成功的幾率也最大。

  1.校準(zhǔn)時(shí)間:

  用戶(hù)機(jī)器上的本地時(shí)間有可能不準(zhǔn)確,因此每當(dāng)用戶(hù)登錄進(jìn)來(lái)的時(shí)候,都會(huì)請(qǐng)求服務(wù)器時(shí)間,以服務(wù)器時(shí)間做為標(biāo)準(zhǔn)。

  (邏輯:當(dāng)頁(yè)面載入的時(shí)候,向遠(yuǎn)程服務(wù)器發(fā)送獲取標(biāo)準(zhǔn)服務(wù)器時(shí)間的請(qǐng)求,請(qǐng)求地址為:http://www.sogou.com/websearch/features/standardtimeadjust.jsp?t=' + Date.now(),地址的最后加上時(shí)間戳來(lái)保證請(qǐng)求不會(huì)因?yàn)闉g覽器的緩存策略而受到影響,從而每一次請(qǐng)求都是一個(gè)全新的請(qǐng)求,能夠獲取到最新的標(biāo)準(zhǔn)時(shí)間,當(dāng)獲取到標(biāo)準(zhǔn)時(shí)間后就保存起來(lái)供后續(xù)校準(zhǔn)時(shí)間使用。)

搜狗12306瀏覽器

  搜狗12306專(zhuān)版瀏覽器在每一次定時(shí)搶票之前都會(huì)校準(zhǔn)時(shí)間

  代碼:

  1. (function(w, d){ 
  2. var getRemoteTime = function(){ //獲取標(biāo)準(zhǔn)時(shí)間(通過(guò)jsonp的方式獲取) 
  3. var script = d.createElement('script'); 
  4. script.src = 'http://www.sogou.com/websearch/features/standardtimeadjust.jsp?t=' + Date.now(); 
  5. d.body.appenDChild(script); 
  6. }; 
  7. var standardtime = function(timestamp){ //當(dāng)標(biāo)準(zhǔn)時(shí)間獲取到時(shí),通知頁(yè)面,保存標(biāo)準(zhǔn)時(shí)間 
  8. matchPort.postMessage({command: 'ready', remoteTime: timestamp}); 
  9. }; 
  10. w.standardtime = standardtime; 
  11. var matchPort; 
  12. sogouExplorer.extension.onConnect.addListener(function(port){ //當(dāng)12306登錄頁(yè)面或者查詢(xún)頁(yè)面載入時(shí),發(fā)起查詢(xún)標(biāo)準(zhǔn)時(shí)間的請(qǐng)求 
  13. if(port.name === 'remoteTime'){ 
  14. matchPort = port
  15. port.onMessage.addListener(function(msg){ 
  16. if(msg.command === 'get'){ 
  17. getRemoteTime(); 
  18. }); 
  19. }); 
  20. }(window, document)); 
  21. …… 
  22. var now = new Date(Date.now() - utility.diffTime), //根據(jù)當(dāng)前本地時(shí)間和時(shí)間差計(jì)算出來(lái)的當(dāng)前服務(wù)器時(shí)間 
  23. hour = now.getHours(), 
  24. min = now.getMinutes(), 
  25. sec = now.getSeconds(); 
  26. padding_time = diff(countdown_time, { //計(jì)算當(dāng)前服務(wù)器時(shí)間和最終時(shí)間的差距,格式為*小時(shí)*分*秒 
  27. hour: hour, 
  28. min: min, 
  29. sec: sec 
  30. }); 
  31. }; 

  2.防踢出

  當(dāng)用戶(hù)端瀏覽器因長(zhǎng)時(shí)間未操作時(shí),有可能被12306網(wǎng)站認(rèn)為對(duì)話(huà)已結(jié)束,從而會(huì)將用戶(hù)踢出。這將嚴(yán)重耽誤用戶(hù)購(gòu)票的時(shí)間,為了防止這種情況的發(fā)生,同時(shí)減輕12306網(wǎng)站的負(fù)擔(dān),搜狗“12306專(zhuān)版瀏覽器”會(huì)定時(shí)對(duì)12306網(wǎng)站說(shuō):“Hi,我還在線(xiàn),請(qǐng)不要將我踢出。”

  (邏輯:定時(shí)發(fā)送空請(qǐng)求,請(qǐng)求地址為https://dynamic.12306.cn/otsweb/order/querySingleAction.do?method=init&t=' + Date.now(),同樣加上了時(shí)間戳防止因?yàn)g覽器緩存策略而不能將請(qǐng)求真正發(fā)送給12306服務(wù)器。)

  代碼(位于12306-webkit.js中):

  1. var intervalRequest = function(){ 
  2. var requestUrl = 'https://dynamic.12306.cn/otsweb/order/querySingleAction.do?method=init&t=' + Date.now(); 
  3. var img = new Image; 
  4. img.src = requestUrl; //發(fā)起一個(gè)空請(qǐng)求 
  5. setTimeout(intervalRequest, interval); 
  6. }; 
  7. intervalRequest(); 

  3.放票瞬間搶票

  當(dāng)放票的一瞬間,開(kāi)始搶票,因?yàn)榕c服務(wù)器時(shí)間已同步,因此搜狗會(huì)在第一時(shí)間發(fā)送請(qǐng)求,對(duì)于以秒計(jì)算的搶票過(guò)程來(lái)說(shuō),無(wú)疑擁有更高的幾率訂票成功。

  “定時(shí)搶票”功能與其他瀏覽器的“自動(dòng)刷票”功能相比,示例如下:

  13:00:00秒開(kāi)始放票,其他搶票瀏覽器如果已經(jīng)在12:59:59秒刷新過(guò)頁(yè)面,那他們的下次刷新時(shí)間為13:00:05(遵守12306網(wǎng)站6秒/次的刷新頻率) ,但搜狗“定時(shí)搶票”功能卻可以在13:00:00準(zhǔn)時(shí)開(kāi)始搶票,寶貴的5秒鐘,可以顯著提升用戶(hù)訂票的成功率。

  (邏輯:當(dāng)?shù)褂?jì)時(shí)終了的時(shí)候就會(huì)將之前保存起來(lái)的出發(fā)地、目的地的信息回填到輸入框中,隨后觸發(fā)左側(cè)“開(kāi)始刷票”按鈕的功能,不斷嘗試,直至刷到有票為止。)

  代碼:

  1. .addEndHandler(function(){ //倒計(jì)時(shí)時(shí)間達(dá)到,開(kāi)始刷票 
  2. first_ticket_btn_status = 'stopped'
  3. first_ticket_pingback = true
  4. $('#first-ticket-btn').removeClass('running').adDClass('stopped'); 
  5. countdown = null
  6. hideFirstTicketInfo(); 
  7. $tickettime_options.attr('disabled', false); 
  8. $tickettime_options.val('').change(); 
  9. $toolbar_startdate.attr('disabled', false); 
  10. //將之前保存的相關(guān)信息以程序的方式填入進(jìn)去,準(zhǔn)備刷票 
  11. $('#fromStationText').val(fromStationText4FirstTicket); 
  12. $('#fromStation').val(fromStation4FirstTicket); 
  13. $('#toStationText').val(toStationText4FirstTicket); 
  14. $('#toStation').val(toStation4FirstTicket); 
  15. $('#startdatepicker').val(startdate4FirstTicket); 
  16. if(auto_refresh_btn_status === 'stopped'){ 
  17. $('#auto-refresh-btn').click(); //觸發(fā)刷票功能 
  18. }) 
  19. .start(); 

總結(jié)

  對(duì)于這個(gè)全球瞬間點(diǎn)擊量第一,而卻沒(méi)有淘寶樣強(qiáng)大承載能力的12306網(wǎng)站,單純靠原始的人工刷票方法,就算給你一天時(shí)間也不一定刷出票來(lái)。

  搜狗對(duì)搶票技術(shù)做了大量?jī)?yōu)化,獨(dú)家推出“定時(shí)搶票”功能,保證用戶(hù)在放票的第一時(shí)間開(kāi)始搶票,與一般搶票插件的“自動(dòng)刷票”功能相比,其優(yōu)勢(shì)是搶票成功率大大提升,并且對(duì)12306服務(wù)器的負(fù)載大大降低,做到了兩全其美。搜狗將持續(xù)做好12306專(zhuān)版瀏覽器的技術(shù)維護(hù),為更多歸心似箭的網(wǎng)友帶來(lái)福音。

責(zé)任編輯:黃丹 來(lái)源: 泡泡網(wǎng)
相關(guān)推薦

2012-09-19 14:31:44

獵豹瀏覽器搶票

2013-09-12 10:50:13

獵豹瀏覽器12306搶票軟件

2013-09-12 11:17:02

2013-12-09 14:21:45

12306搶票瀏覽器

2013-01-22 17:39:57

360瀏覽器搶票專(zhuān)版

2013-09-12 11:06:50

瀏覽器搶票12306

2018-01-12 11:17:26

搜狗瀏覽器搶票春運(yùn)

2013-09-12 16:24:37

傲游云瀏覽器

2021-07-26 07:47:37

前端自動(dòng)搶票

2013-01-14 17:02:10

獵豹瀏覽器

2013-01-16 09:15:05

2013-01-23 11:24:57

360瀏覽器搶票

2013-01-17 10:49:42

2012-02-22 18:35:41

搜狗瀏覽

2013-01-18 16:23:27

春運(yùn)訂票搶票

2013-09-12 11:11:55

360獵豹12306

2013-01-21 13:07:31

傲游云瀏覽器

2019-12-30 07:00:51

技術(shù)研發(fā)系統(tǒng)

2014-12-22 11:07:18

12306

2013-01-22 09:31:33

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)