ITmedia NEWS > STUDIO >

Google�A�uSPDY�v�I���ƁuHTTP/2�v�T�|�[�g�𔭕\

» 2015�N02��10�� 09��00�� ���J
[�����R�I�q�CITmedia]

�@��Google��2��9���i���n���ԁj�A2009�N�ɔ��\�����A�v���P�[�V�������C���[�v���g�R���uSPDY�v�̃T�|�[�g��2016�N�����܂łɏI������v��𔭕\�����B

�@SPDY�́A�l�b�g���[�L���O�v���g�R���uHTTP�iHypertext Transfer Protocol�j�v���T�|�[�g���AWeb�y�[�W�\��������������ړI�ō\�z���ꂽ�v���g�R���B�����グ�����A�قƂ�ǂ�Web�T�C�g��HTTP�̃o�[�W����1.1�iHTTP/1.1�j���̗p���Ă������AHTTP/2�̕W�������߂����߁AWeb�u���E�U�uChrome 40�v�̎��̃A�b�v�f�[�g����i�K�I��HTTP/2���T�|�[�g����Ƃ����B

�@HTTP/2��SPDY���x�[�X�Ƃ��Ă���ASPDY�̕����X�g���[���̃}���`�v���b�N�X�@�\�A�w�b�_���k�@�\�A���N�G�X�g�̗D��x�w��@�\�Ȃǂ�HTTP/2�ɓ�������Ă���B

�@�C���^�[�l�b�g�Z�p�̕W���������肷��IETF�iInternet Engineering Task Force�j��HTTP���[�L���O�O���[�v��HTTP/2�̃y�[�W�ɂ��ƁA���v���g�R���̓��X�g�R�[���ɂȂ��Ă���A���̍ŏI�I�Ȉӌ�����Ŗ�肪�Ȃ����RFC�̕ҏW�i�K�ɂȂ�A�����ɍs���ΔN���ɍ��肳��錩�ʂ����B

 spdy

�@Google�͂܂��ATLS�g���@�\�́uNPN�v��Chrome�ł̃T�|�[�g���I�����AALPN�Ɉڍs����B���Ђ̓T�[�o�J���҂ɑ΂��AHTTP/2��ALPN�Ɉڍs���邱�Ƃ��������߂Ă���B

Copyright © ITmedia, Inc. All Rights Reserved.

'; e_dlv.innerHTML = html; adRequest({position:dlv_pos,dom:true}); }else if(ad_type === 'gam'){ var html = '
'; e_dlv.innerHTML = html; refreshGam('InArtSpecialLink'); }else if(ad_type === 'logly'){ var html = '
'; e_dlv.innerHTML = html; loglySet(g_id); }else if(ad_type === 'google'){ var html = '
'; e_dlv.innerHTML = html; googletag.cmd.push(function(){ var slot8 = googletag.defineSlot('/43042345/nlab_artinsert_RT',[[336,280],[300,250],'fluid'],'div-gpt-ad-1551176482959-0').addService(googletag.pubads()); googletag.pubads().enableSingleRequest(); googletag.enableServices(); googletag.display('div-gpt-ad-1551176482959-0'); googletag.pubads().refresh([slot8]); }); } }; var insert_ok = function(_target,_str){ var clearfix = d.createElement('div'); clearfix.className = 'colBoxClear'; if(ad_float_fix){ e_body.insertBefore(e_dlv,_target); e_body.insertBefore(clearfix,_target.nextElementSibling); }else{ e_body.insertBefore(e_dlv,_target); } set_dlv(); }; var insert_ng = function(_str){ e_dlv.style.display = 'none'; }; var main = function(){ var e_nodes = e_body.childNodes; // BODY �����q�v�f var e_tags = []; // BODY �����^�O var p_num = []; // BODY ���� P �^�O�ʒu var p_target_num; // �g�}����ʒu var o_float = {}; // ��荞�ݗv�f var o_this = {}; // �A�N�e�B�u�^�O var o_next = {}; // �A�N�e�B�u�^�O�̎��̃^�O var flag_insert = 0; // �}���t���O // ��荞�ݗv�f�`�F�b�N var check_float = function(_e){ var e = 0; if(_e.id.match(/^col\d{3}(l|r)$/)){ e = _e; } return e; }; // �v�f�� Y ���W�ƍ����̍��v�l var get_element_y = function(_e){ var ey = 0; var eh = _e.offsetHeight; while(_e){ ey += _e.offsetTop; _e = _e.offsetParent; } return ey + eh; }; var check_ptag = function(_e){ var e = 0; if(_e.tagName && _e.tagName === 'P'){ e = _e; } return e; }; var try_insert = function(){ p_target_num = Math.floor(p_num.length / 2) - 1; if(p_target_num >= _maxrange) p_target_num = _maxrange; if(dis_con) p_target_num = 0; for(var i = p_num[p_target_num]; i < e_tags.length; i++){ o_this.e = check_ptag(e_tags[i]); if(o_this.e){ o_next.e = check_ptag(e_tags[i + 1]); if(o_next.e){ if(!o_float.e || check_float(e_tags[i - 1])){ o_float.e = check_float(e_tags[i - 1]); o_float.n = i - 1; } if(o_float.e && o_float.n < i + 1){ o_float.y = get_element_y(o_float.e); o_this.y = get_element_y(o_this.e); set_line(o_float.y,'red'); set_line(o_this.y,'blue'); if(o_float.y < o_this.y){ flag_insert = 1; insert_ok(o_next.e,_threshold + ' �p���ȏ��荞�݂���'); break; } }else{ flag_insert = 1; insert_ok(o_next.e,_threshold + ' �p���ȏ��荞�݂Ȃ�'); break; } } }else{ o_float = {}; } } if(!flag_insert){ insert_ng('�}���ʒu�Ȃ�'); } }; // �S�q�v�f����^�O�̂ݔz��ɓ���� for(var i = 0; i < e_nodes.length; i++){ if(e_nodes[i].tagName){ e_tags.push(e_nodes[i]); } } // �S�^�O���� P �^�O�ʒu��z��ɓ���� for(var i = 0; i < e_tags.length; i++){ if(e_tags[i].tagName === 'P') p_num.push(i); // �ŏ��̉�荞�ݗv�f���i�[ if(!o_float.e){ o_float.e = check_float(e_tags[i]); o_float.y = get_element_y(o_float.e); o_float.n = i; } } if(p_num.length >= _threshold){ try_insert(); }else{ insert_ng('P �^�O ' + _threshold + ' �ȉ�'); } }; if(e_body){ main(); }else{ insert_ng('�L���{���Ȃ�'); } })(document,4,5);