Недавно делал быстрый прототип асинхронного приложения в котором требовалось вызывать много синхронного кода. Да, я знаю, что это не лучший дизайн, но нужно было быстрое решение на один процесс и без очередей. Поэтому я выполнял код в потоках.
Выглядело это примерно так:
from fastapi.concurrency import run_in_threadpool
async def execute(data: DataRequest) -> DataResponse:
try:
result = await run_in_threadpool(sync_function, data)
return DataResponse(data=result)
except Exception as e:
return DataResponse(
error=str(e),
success=False,
)
В общем работает нормально. Для всех вызовов под капотом используется общий тредпул, всё работает предсказуемо.
Но потребовалось изменить количество запускаемых в пуле потоков (по умолчанию создается 40 воркеров).
Так как дело происходит с FastAPI, делается это через lifespan используя настройки anyio:
import anyio
@asynccontextmanager
async def lifespan(app: FastAPI):
limiter = anyio.to_thread.current_default_thread_limiter()
limiter.total_tokens = 100
yield
# если вдруг нужно вернуть обратно
limiter.total_tokens = 40
Зачем менять количество воркеров?
- уменьшить, если оперативки мало (один тред занимает ~8мб)
- увеличить чтобы выдержать нагрузку
Если есть предложения получше при тех же вводных - предлагайте😉
#async
✅Продолжает регулярный выпуск 2 за 2024 г. цикл работ А. Филатова. Первая из них посвящена изучению влияния добавки циркония и скорости кристаллизации на структуру и свойства промышленных алюминиевых сплавов. Показано, что при содержании Zr 0,4 мас.% микротвердость сплава увеличивается в 1,5 раза и продолжает расти по мере увеличения содержания Zr. Основная доля циркония в исходном сплаве представлена интерметаллидами преимущественно состава Al3Zr и размерами от 5 до 50 мкм.
🖌️Aleksandr Filatov (https://orcid.org/0000-0001-9395-8848)
📘Influence of alloying parameters on the structure and properties of AK-6 aluminium alloy
📌Year 2024, Volume 3, Number 2 https://doi.org/10.15826/elmattech.2024.3.034
🏛️Institute of High-Temperature Electrochemistry UB RAS https://ihte.ru/?page_id=3106
Текст статьи https://journals.urfu.ru/index.php/elmattech/article/view/7683/5537
#electrolysis#aluminium#alloy
‼️Das ist einfach schrecklich... US-Militärdokumente enthüllen, dass Waldbrände als Waffen eingesetzt werden‼️
Aluminiumnanopartikel, Wettermanipulation und gezielte Trockengebiete haben Katastrophen in Kalifornien wie in Palisades und Lahaina ausgelöst.
Niederschlagsstopp als Waffe: Klimaingenieure verfügen über fortschrittliche Fähigkeiten, um Regen über längere Zeiträume zu unterdrücken, wie die achtmonatige Dürre vor dem Brand in Palisades in Kalifornien zeigt – eine Taktik, die auch in Ländern des Nahen Ostens wie dem Iran beobachtet wurde.
Brandgefährliche Nanopartikel schüren Brände: Aluminium-Nanopartikel, die bei militärischen Thermit-Sprengungen verwendet werden, werden absichtlich verteilt und bedecken den Waldboden und das Laub, wodurch die Vegetation hochentzündlich wird und die Brandintensität mit der Zeit zunimmt.
Künstlich erzeugte Wetterbedingungen schaffen Bedingungen wie bei einem Brenner: Die Manipulation von Luftdruckzonen – wie anomale Tiefdruckgebiete im Norden und Hochdruckgebiete im Süden (z. B. Hurrikan Dora) – erzeugt extreme zonale Windströmungen, die Brände in heftige „Blasebalg”- oder „Brenner”-Ereignisse verwandeln, identisch mit denen, die wir in Lahaina, Hawaii, gesehen haben.
Spekulationen über die Entzündung als Folge der Vorbereitung: Während in Online-Theorien über die Brandstifter diskutiert wird, ist das Kernproblem die vorab geschaffene Vorlage aus Trockenheit, Partikeln und Windanomalien, die eine beispiellose Heftigkeit SICHERSTELLT und die Zündquellen irrelevant macht.
Blaupause des US-Militärs zur Nutzung von Waldbränden als Waffe: Ein 140-seitiges, freigegebenes Dokument mit dem Titel „Wildfires as a Military Weapon” (Waldbrände als militärische Waffe) identifiziert 17 US-Untersuchungsstandorte, darunter Los Angeles, und beschreibt detailliert die genauen Vorbereitungen vor dem Brand, wie sie bei den jüngsten Katastrophen zu beobachten waren.
Gezielte „Flash Drought”-Erklärungen: Lahaina wurde nur eine Woche vor seiner Verbrennung offiziell als Flash-Drought-Zone ausgewiesen, was unterstreicht, dass diese Ereignisse eher inszeniert als zufällig sind.
Quelle: MJTruthUltra
Findest du diese Info wichtig? Dann abonniere unseren Kanal!
👉@LegitimNews
#Klima#Geoengineering#Klimaengineering#Brände#Lahaine#Militär#Waffen#Waldbrände#Aluminium