GRPC 1.1.0 ·¢²¼ÁË£¬GRPC ÊÇÒ»¸ö¸ßÐÔÄÜ¡¢¿ªÔ´¡¢Í¨ÓÃµÄ RPC ¿ò¼Ü£¬ÃæÏòÒÆ¶¯ºÍ HTTP/2 Éè¼Æ£¬ÊÇÓɹȸ跢²¼µÄÊ׿î»ùÓÚ Protocol Buffers µÄ RPC ¿ò¼Ü¡£ GRPC »ùÓÚ HTTP/2 ±ê×¼Éè¼Æ£¬´øÀ´ÖîÈçË«ÏòÁ÷¡¢Á÷¿Ø¡¢Í·²¿Ñ¹Ëõ¡¢µ¥ TCP Á¬½ÓÉϵĶิÓÃÇëÇóµÈÌØÐÔ¡£ÕâÐ©ÌØÐÔʹµÃÆäÔÚÒÆ¶¯É豸ÉϱíÏÖ¸üºÃ£¬¸üÊ¡µçÇÒ½ÚÊ¡¿Õ¼äÕ¼Óá£
¸üÐÂÄÚÈÝ£º
C-core:
Ìí¼Ó¶Ô HTTP CONNECT ´úÀíµÄÖ§³Ö
ÐÞ¸´ handshaking Ïà¹ØµÄÐí¶à bug
Ìí¼Ó×î´óÏûÏ¢·¢Ëͳ¤¶ÈµÄͨµÀ arg
C++:
ÔÊÐíͨ¹ý¿Í»§¶Ë API Ñ¡Ôñ¸ºÔØÆ½ºâ²ßÂÔ
Python:
ÐÞ¸´ time_remaining() API µÄ bug
Á÷ʽ API µÄ¿Éµü´úÑéÖ¤
Ìí¼Ó·þÎñÆ÷ͨµÀ arguments ²ÎÊý
Ruby:
·µ»Ø²»¿ÉÓà EPIPE fix
Bug ÐÞ¸´: PR¡¯s
Ruby-tools on windows fix
Ìí¼Ó BadStatus ×ÓÀà API: PR
Ö§³Ö Ruby 2.4
PHP:
Ö§³Ö Proto3
C#:
ÐÞ¸´:´ÓrequestStream.WriteAsync() Å׳ö RpcException ¶ø²»ÔÙÊÇ InvalidOperationException
Public C# »ù×¼ÒÑÇл»µ½ CoreCLR
Huge C# ÍÌÍÂÁ¿Ìá¸ß£¬Îª»ñµÃ×î¼ÑÐÔÄÜ£¬ÇëʹÓ÷þÎñÆ÷GCģʽ "System.GC.Server": true
¿ªÊ¼ÔÚWindowsÉÏÊÕ¼¯»ù±¾ÐÔÄÜÊý×Ö¡£
»ù±¾·þÎñÆ÷·´ÉäʵÏÖÔÚ Grpc.Reflection NuGet °üÖпÉÓÃ
Codegen ¸Ä½ø
ÆäËü bug ÐÞ¸´
Objective-c:
һЩΪ¸üºÃµÄʵÏÖ Cronet Ö§³Ö Node µÄ Bug ÐÞ¸´:
Ìí¼Ó¶Ô Node 7 µÄÖ§³Ö
Ìí¼Ó¶Ô Electron µÄÖ§³Ö (°´ËµÃ÷²Ù×÷ http://electron.atom.io/docs/tutorial/using-native-node-modules/ Êǰ²×°Ê±±ØÒªµÄ¡£ export npm_config_build_from_source=true ÐпÉÊ¡ÂÔ)
ÒÆ³ý¶Ô²»ÔÙά»¤µÄÁ½¸ö Node °æ±¾µÄÖ§³Ö: Node 0.12 and io.js 1.0
ÐÞ¸´²»»á³öÏÖÐòÁл¯´íÎóµÄ bug
ÐÞ¸´Ê¼þ£¨ÌرðÊÇ״̬ºÍ´íÎ󣩿ÉÒÔ¸ù¾Ý·½·¨ÀàÐÍÒÔ²»Í¬µÄ˳Ðò·¢³öµÄ bug
ÐÞ¸´µ±¿É¶ÁµÄ stream Òò´íÎóʧ°Üʱ£¬½áÊøÊ¼þ¿ÉÄܱ»ºöÂÔµÄÎÊÌâ
ÒÑÖªÎÊÌâ: µ±ÌṩµÄÖ÷»úÃûûÓж˿ںÅʱ£¬DNS ½âÎöÔÚ¿Í»§¶ËÖÐʧ°Ü
Èí¼þÏêÇ飺https://github.com/grpc/grpc/releases
ÏÂÔØµØÖ·£ºhttps://github.com/grpc/grpc/archive/v1.1.0.zip
À´×Ô:¿ªÔ´ÖйúÉçÇø

