Возможно, стоит пояснить разницу между синхронизацией из thread/process-safe и синхронизацией с помощью Lock🤔
Наша задача — заставить разные процессы и потоки обращаться к базе данных (или любым другим ресурсам) последовательно. Чтобы не случилось так называемого race condition, то есть состояние гонки. Это когда разные потоки или процессы пытаются одновременно что-то сделать с одним и тем же ресурсом.
В этом случае нам нужна какая-то логика ограничения. Пока один процесс не завершил своё действие, другие не могут получить доступ к ресурсу.
Так вот, thread-safe и process-safe означает что отдельно взятые операции записи в БД гарантированно будут последовательны. Запросы из разных процессов или потоков выстроятся в очередь и не будут мешать друг другу. Лучше всего когда этот блок реализован на уровне БД в виде атомарных операций или ещё как-то.
Но зачем нам тогда еще дополнительный Lock?
Этот способ синхронизации используется когда процесс никак не укладывается в одно действие и должен сделать множество операций прежде чем дать доступ следующему. В этом случае процесс ставит некий глобальный Lock на ресурс и никто другой, даже получив законное право на доступ, не может ничего сделать. Все ждут пока этот Lock не будет снят.
Это решается на уровне приложения и правильность реализации полностью в вашей ответственности. Например, если забыли разблокировать или сделали перекрёстный Lock (Deadlock как на картинке), то всё зависнет в бесконечном ожидании.
#basic
Геотермальная энергия, когда же уже?
Три года назад издание 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