Три способа выполнить множество задач с asyncio
Функция для примера:
async def do_it(n):
await asyncio.sleep(random.uniform(0.5, 1))
return n
1. Последовательный вызов
async def main():
for i in range(100):
result = await do_it(i)
Такой вызов имеет смысл только тогда, когда результат одной задачи требуется для вызова следующей.
Если они независимы, то это антипаттерн, так как аналогичен простому синхронному вызову по очереди.
2. Упорядоченный результат
async def main():
tasks = [do_it(i) for i in range(100)]
results = await asyncio.gather(*tasks)
Выполняет корутины конкурентно и возвращает результат в виде списка.
Полезен когда требуется получить результаты в том же порядке в котором задачи отправлены.
3. Результат по мере готовности
tasks = [asyncio.create_task(do_it(i)) for i in range(100)]
for cor in asyncio.as_completed(tasks):
result = await cor
Так же выполняет корутины конкурентно, но не гарантирует порядок. Результат возвращается по мере готовности, каждый отдельно.
Полезен когда нужно обработать любой ответ как можно скорее.
#async
Геотермальная энергия, когда же уже?
Три года назад издание Vox опубликовало классную статью "Geothermal energy is poised for a big breakout", в которой дается обзор этого источника энергии и технологий для добычи геотермальной энергии. Очень интересно и познавательно, почитайте - ссылка! Статья написана в позитивном ключе, что мол даже 0.1% тепловой энергии Земли достаточно, чтобы обеспечить энергией все человечество на 2 миллиона лет вперед, и технологии на подходе.
Неделю назад, это же издание опубликовало более отрезвляющий материал "Is the future of energy ... pouring water on hot rocks in the ground?", написанный по следам успехов компании Fervo, которая впервые добилась результатов по генерации электричества в промышленных масштабах с помощью технологии усоверщенствованных геотермальных систем (ESG), я писал об этом тут. Авторы пишут, что технология конечно работает, но стоимость решения на данный момент $450 за киловатт, в то время как ветер и солнце дают $30-50 за киловатт. Пока технология добычи геотермальной энергии настолько неэфективна, что при циркуляции воды внутри системы, ее потери составляют до 20%, что собственно, даже дороже конечного продукта, поставляемого электричества. Статья.
Если кто-то хочет начать разбираться в том как работает добыча энерегии с помощью геотермальных систем, я советую прочитать обе статьи. Вторая, конечно, своего рода ложка дегтя. Но если посмотреть с другой стороны, инженеры, работающие в геотермалке должны трезво смотреть на мир и попытаться найти технологические решения, которые действительно помогут в масштабировании технологии.
#geothermal#climate
Нефтяные скважины для геотермальной энергии
В Оклахоме тысячи никому не нужных нефтегазовых скважин. Стоят себе. Их нужно законсервировать или использовать для извлечения энергии. Товарищи из Университета в Оклахоме сделали инструмент, для быстрой выборки нефтяных скважин, которые могут быть перепрофилированы в геотермальные.
В основе инструмента известные статистические методы: метод K-ближайших соседей и Кригинг (гауссовские процессы). Для оценки возможных кандидатов анализировались три фактора: температура, близость к конечному пользователю и целостность скважины.
Тема интересная. Департамент Энергетики США сейчас выделяет гранты проектам за доступ к геотермальному потенциалу заброшенных нефтяных и газовых скважин, например ICE Thermal Harvesting или Transitional Energy.
#geothermal#startup#oil&gas
Геотермальный прорыв Fervo Energy
Тим Латимер, CEO геотермального стартапа Fervo Energy, сообщил об успешном завершении полномасштабного пилотного проекта "Project Red", который способен генерировать 3.5 мегаватта электричества. Project Red будет подключен к сети и запитает в том числе гугловские дата центры.
История крутая. Еще 10 лет назад Тим работал буровым инженером и понял, что нефтегазовые технологии достаточно продвинутые и дешевые, чтобы их применить в создании усовершенствованных геотермальных систем (ESG), на второй картинке. Это когда после гидроразрыва пласта закачивают холодную воду, а выкачивают горячую. С ним мало кто соглашался и он пошел в Стэнфорд поучиться, где написал, научные работы, подтверждающие его гипотезы и нашел сооснователя Fervo Energy. Шесть лет они выхватывали кучу хейта, так как технология ESG считалась слишком сырой и не готовой для коммерциализации.
И вот недавно, оба кофаундера выпустили отчет, где отчитались об успешном завершении первого в своем роде ESG пилотного проекта в Северной Неваде - Project Red. Бурили в вулканические породы при температурах около 200 градусов по Целльсию. В общем начался опять движ в геотермалке. Стоит сказать, что затраты на получение энергии с помощью этой технологии все еще слишком велики.
Вот тут можно почитать подробнее.
#geothermal#technology#drilling#decarbonization