Три способа выполнить множество задач с 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
🚢CMA CGM вводит экстренную топливную надбавку из-за роста цен на бункер.
Французская контейнерная линия CMA CGM Group объявила о введении экстренной топливной надбавки (fuel surcharge) на фоне резкого роста цен на бункер, вызванного конфликтом на Ближнем Востоке.
Надбавка будет применяться к грузам, загружаемым с 23 марта, и составит от $65 до $180 за контейнер в зависимости от типа груза (сухой или рефрижераторный), дальности маршрута и направления перевозки.
Рост стоимости топлива связан с перебоями поставок и геополитической напряжённостью в районе Ормузского пролива. Судоходные компании уже приостановили часть сервисов в Персидский залив, а суда, находящиеся внутри региона, остаются в ожидании из-за рисков безопасности и страховых ограничений.
Ранее аналогичную экстренную топливную надбавку объявила MSC для грузов из Северной Европы в Красное море и Восточную Африку.
Для контейнерного рынка это означает дальнейшее увеличение транспортных издержек и возможный рост ставок на фоне подорожания бункера.
📌CMA CGM Group — французская контейнерная судоходная компания, основанная в 1978 году в Марселе. Является третьим по величине линейным перевозчиком в мире и контролируется семьёй Сааде.
#ContainerShipping#CMACGM#FuelSurcharge#BunkerPrices#ShippingCosts
🚢Рекордные премии на бункер вынуждают суда искать топливо в азиатских хабах.
Резкий рост цен на морское топливо на фоне конфликта на Ближнем Востоке привёл к серьёзным сбоям в бункеровке судов в крупнейших азиатских портах. По данным участников рынка, стоимость топлива выросла более чем в два раза по сравнению с уровнем до начала конфликта.
В крупнейшем мировом бункеровочном хабеСингапуре цена низкосернистого топлива превысила $1 000 за тонну, а премии на спотовом рынке достигли рекордных уровней — значительно выше отметки $200 к базовым котировкам.
Суда всё чаще сталкиваются с задержками при бункеровке, что может привести к росту загруженности портов Сингапура, Шанхая и Нинбо-Чжоушань.
Перенаправление судов из-за ограничений транзита через Ормузский пролив также увеличивает поток трафика в азиатские порты.
По оценке аналитиков, многие поставщики переходят на спотовые продажи, избегая долгосрочных контрактов из-за высокой волатильности цен.
Дополнительное давление на рынок создаёт сокращение поставок топочного топлива из стран Ближнего Востока.
Для судоходной отрасли это означает рост операционных затрат, увеличение времени ожидания в портах и дополнительное давление на фрахтовые ставки.
📌Linerlytica — аналитическая компания в сфере морской логистики и контейнерных перевозок, специализирующаяся на анализе глобальных торговых потоков и портовой статистики. Компания является частной и принадлежит основателям и инвесторам.
#Bunkering#FuelPrices#SingaporePort#ShippingCosts#MaritimeTrade