في الأسبوع الماضي في سانت بطرسبرغ استضافت جافا الدولي للمؤتمرات جوكر. لقد طلبنا من رجالنا الذين زاروها أن يخبروا قليلاً عن المنظمة والعروض الأكثر إثارة للاهتمام ، في رأيهم. لاحظ شخص ما أكثر الضجيج والمرح ، شخص - الأكثر أهمية ومفيدة. ومع ذلك ، قرأت عن ذلك مباشرة.

هذا العام كان هناك عدد أكبر من الزوار ومنصات الراعي بشكل ملحوظ ، مما أدى إلى "ازدحام مروري" بسيط في الممرات ومنطقة المعرض وفي العشاء.
عقدت التقارير ، كالعادة ، في 4 تيارات بالإضافة إلى 2 تيارات صغيرة في المدرجات التجريبية في منطقة المعرض. كان هناك تقرير واحد على الأقل مثير للاهتمام دائمًا في هذا المخطط. بين الخطابات ، يمكنك التحدث مع أحد المتحدثين في منطقة المناقشة أو الاستماع إلى تقارير مصغرة في أكشاك العرض.
والآن حول التقارير نفسها ولماذا تذهب إلى المؤتمرات على الإطلاق.
أندريه جروموف rjhdby ،
FunCorp الخلفية المطوربالنسبة لي ، تمثل الرحلة إلى المؤتمر فرصة للخروج من السياق اليومي. لإلقاء نظرة على الأشياء المألوفة من وجهات نظر أخرى ، وغير مألوفة - انظر فقط. وأهم الأشياء التي يتم إحضارها من المؤتمر هي صفحات مكتوبة في دفتر ملاحظات. ليس مع ملخص للتقارير ، بالطبع ، ولكن مع الأفكار التي نشأت أثناء عملية الاستماع إليهم.
من وجهة النظر هذه ، مرت Jocker 2019 بالنسبة لي تحت علامة JNI ودواخل آلة افتراضية.
أثارت ثلاثة تقارير الاهتمام الأكبر ، باستثناء باروخ ، الذي يمكن أن يخبرنا أيضًا عن التقارير المحاسبية للخيمة مع الشاورما حتى لا تمزق نفسك.
- كليف كليك. بحر العقد وهوت سبوت جيت
تقرير رائع عن المطبخ الداخلي HotSpot C2 JIT من شخص يفهم هذا بالفعل أفضل من الجميع تقريبًا.
من غير المحتمل أن تؤثر هذه المعرفة على عملي ، ولكن تمت إعادة ملء نصف صفحة في دفتر ملاحظات بملاحظات تحمل علامة "قراءة" و "يمكن تطبيق النهج في XXX" ، وهو أمر رائع.
- ايونوت بالوسين. سباق من اثنين من المترجمين: GraalVM JIT مقابل HotSpot JIT C2
تحدث Jonuts عن بعض الاختلافات الرئيسية في تنفيذ هذين المجمعين وأثرهما على الأداء في أنواع معينة من المهام. للوهلة الأولى ، يبدو أن التقرير بسيط: حسنًا ، لقد تناولته وجربته ، لكن هذا فقط للوهلة الأولى ، حتى تبحث في تفاصيل ما قيل وعرض. ثم يأتي فهم مقدار العمل الذي أنجزه المتحدث من أجل إظهار هذه "الرسوم البيانية البسيطة".
- ديمتري بيسكلوف. Microservices المسؤولة عن بضع microseconds - الأصدقاء والأعداء
الدم ، الشجاعة - كل ما أحب. سوف يعلمك هذا الشخص الطريقة الخاطئة للقيام بالخطوات الدقيقة ، ولكن بسرعة الفضاء. أظن أنه بعد هذا التقرير اضطررت إلى استبدال العديد من الكراسي بمفروشات محترقة.
هنا وحول غير آمن ، وحول mmap ، وحول ضبط معلمات kernel ، وحول مكدس الشبكة ، وحول كل شيء آخر تحت شعار "الأداء في المقدمة"!
يفغيني زاخاروف nerumb ،
FunCorp الخلفية المطور
- سيرجي كوكسينكو. هل تحتاج Java إلى أنواع "مضمّنة"؟ نظرة فاحصة على مهندس الأداء في مشروع فالهالا
تقرير مثير للاهتمام من مهندس من Oracle ، والذي شارك التفاصيل الداخلية للعمل على Valhalla. كان لدي تساؤلات حول سبب عدم وصول Valhalla إلى Java لفترة طويلة ، وأجاب هذا التقرير على الكثير منهم.
ليس من السهل تنفيذ أنواع القيم في Java ، وعليك حفظها حرفيًا على وحدات "بايت". تحدث سيرجي عن بعض الحيل التي اضطروا للذهاب إليها حتى لا يغيروا هيكل تخزين الأشياء في جافا ووضع جميع المعلومات اللازمة فيها. وما كان مفاجئًا بشكل خاص هو أن Valhalla لا يجعل جافا أسرع فحسب ، بل هناك أيضًا عواقب سلبية. من الضروري تعقيد الكود الموجود مع أنواع القيمة ، وفي بعض الحالات يتم الحصول على تدهور طفيف في الأداء (على الرغم من أنه وفقًا لسيرجي ، في الوقت الحالي لا يزيد هذا عن 10٪ في أكثر السيناريوهات سلبية). ولكن لا يزال العمل النشط جارياً ونأمل أن يتمكن فريق Oracle من تحسين السيناريوهات السلبية وترجمة Valhalla في النهاية إلى Java.
على سبيل المكافأة ، طلب سيرجي من كل من يهتم بتجربة Valhalla (سيكون متاحًا قريبًا في مجموعة OpenJDK عند تشغيل العلم) والتحقق من عمله على البرامج النصية الخاصة به. يُنصح بشدة بإبلاغ فريق التطوير بالتدهور القوي في الإنتاجية ، إن وجد.
- تاجير فالييف. جافا 9-14: تحسينات صغيرة
كما هو الحال دائمًا ، تقرير مثير للاهتمام من تاجير ، الذي لا يحتاج إلى تقديم. كان هناك الكثير من الأشياء المثيرة للاهتمام حول التحسينات الداخلية التي أصبحت متوفرة فقط مع الترقية إلى الإصدار الجديد من Java. قدم تاجير العديد من الأمثلة ، من بينها أبرزها
abs
، والتي ، على ما يبدو ، لم يكن لديها مكان لتحسينها أكثر. تطبيق الأسلوب نفسه يتألف من سطر واحد فقط من التعليمات البرمجية. ولكن تم إجراء هذه الطريقة أيضًا بشكل أسرع من خلال جعلها طريقة
intrinsic
. كانت هناك العديد من الأمثلة الأخرى التي تؤدي فيها الترقية البسيطة إلى الإصدار التالي من Java إلى زيادة السرعة ، حتى في بعض الأحيان من خلال عدة أوامر من حيث الحجم ، كما هو الحال مع نفس
hypot
. أنصحك أن ترى بالتأكيد تسجيل التقرير لأولئك الذين لم يروه بعد.
أوليغ زولوتاريفFunCorp الخلفية المطور
- يورجن هولير وجوش لونج. ربيع رد الفعل إعادة النظر
قام "جوش" بحل كل الكلام ، بينما يحكي التقرير نفسه جيدًا عن رد الفعل بكل مظاهره حرفيًا في أحدث إصدار من Spring. تحدثوا أيضًا عن التكامل مع RSocket (هل تعلم أنه لأول مرة يستخدم إصدار الربيع التبعية غير المستقرة في الإصدار المستقر؟). بالطبع ، يمكن أيضًا الحصول على هذه المعلومات من الكتيبات الرسمية ، ولكن هنا كانت بشكل مباشر وفي شكل تجميعي.

- باروخ سادوجورسكي. DevOps للمطورين (أو ضدهم؟!)
مزق باروخ الأغطية على الخاتمة الرئيسية في اليوم الأول ، وفعل جيدًا! من هذا التقرير سوف تتعلم كيف ومن أين جاءت أيديولوجية DevOps ، وهو الوحيد الذي ينفذ "واجهته". كان من المثير للاهتمام أن نسمع ما هو "أفضل رمز" (DoD) الخاص به ، وما هو مشترك بين براعة البرمجيات و DevOps.
لسوء الحظ ، لم يكن الختام الرئيسي لليوم الثاني "قابلاً للاشتعال" كما كان في العام الماضي ، عندما تحدث الدكتور كورباتوف ، واستغرقت مناقشة هذا الأداء في غرف الدردشة شهرًا آخر.
ومع ذلك ، فإننا لا نذهب إلى المؤتمر من أجل هذا ، ولكن من جميع النواحي الأخرى كان النجاح.
شكرا جزيلا لجميع المنظمين والمتحدثين! نراكم في المؤتمرات القادمة!