Python Digest #24: Grumpy, 5 причин не використовувати django admin, огляд фіч Python 3.6

2 хв. читання

Відео

  • Огляд нових фіч в Python 3.6


Статті


Релізи


Інструменти

  • Thonny - Python IDE для початківців

  • Grumpy - експериментальный Python runtime для мови Go

Однією з основних цілей проекту є забезпечення високого рівня сумісності з CPython і досягнення можливості застосування Grumpy в якості повноцінної заміни Python runtime для проектів на мові Python. Код транслятора написаний на мові Python.

Grumpy націлений на використання в якості прозорої заміни CPython 2.7 і дозволяє вирішити проблеми з поганою роботою CPython в умовах обробки масових паралельних запитів. Зокрема, однією з поставлених перед Grumpy завдань була оптимізація роботи API YouTube, написаного на Python. Grumpy не формує байткод і не використовує віртуальну машину. На виході генерується набір звичайних вихідних текстів на мові Go, які потім можуть бути перетворені в машинний код за допомогою штатного компілятора Go. В отриманих після компіляції вихідних текстах продовжують використовуватися специфічні для Python структури даних, але реалізація структур оптимізована для гарної масштабованості в умовах масової паралельної обробки даних.

Grumpy позбавлений ключової проблеми Python - GIL (Global Interpreter Lock), що не допускає паралельного виконання декількох потоків коду. Grumpy також використовує збирач сміття Go для управління життям об'єктів замість застосовуваної в Python системи на основі підрахунку посилань. У поєднанні з компіляцією в виконуваний код, подібні поліпшення дозволяють домогтися істотного приросту продуктивності. Рівень масштабованості Grumpy добре демонструє нижченаведений графік, що відображає результати проходження тесту продуктивності Fibonacci:

Grumpy {full-post-img}


Інше

Помітили помилку? Повідомте автору, для цього достатньо виділити текст з помилкою та натиснути Ctrl+Enter
Codeguida 5.8K
Приєднався: 8 місяців тому
Коментарі (0)

    Ще немає коментарів

Щоб залишити коментар необхідно авторизуватися.

Вхід / Реєстрація