Возможно, стоит пояснить разницу между синхронизацией из thread/process-safe и синхронизацией с помощью Lock🤔
Наша задача — заставить разные процессы и потоки обращаться к базе данных (или любым другим ресурсам) последовательно. Чтобы не случилось так называемого race condition, то есть состояние гонки. Это когда разные потоки или процессы пытаются одновременно что-то сделать с одним и тем же ресурсом.
В этом случае нам нужна какая-то логика ограничения. Пока один процесс не завершил своё действие, другие не могут получить доступ к ресурсу.
Так вот, thread-safe и process-safe означает что отдельно взятые операции записи в БД гарантированно будут последовательны. Запросы из разных процессов или потоков выстроятся в очередь и не будут мешать друг другу. Лучше всего когда этот блок реализован на уровне БД в виде атомарных операций или ещё как-то.
Но зачем нам тогда еще дополнительный Lock?
Этот способ синхронизации используется когда процесс никак не укладывается в одно действие и должен сделать множество операций прежде чем дать доступ следующему. В этом случае процесс ставит некий глобальный Lock на ресурс и никто другой, даже получив законное право на доступ, не может ничего сделать. Все ждут пока этот Lock не будет снят.
Это решается на уровне приложения и правильность реализации полностью в вашей ответственности. Например, если забыли разблокировать или сделали перекрёстный Lock (Deadlock как на картинке), то всё зависнет в бесконечном ожидании.
#basic
The largest holder of $WIF once again borrowed 2M $USDC from #Kamino to buy 894,854 $WIF at $2.24 1 hour ago!
This whale now holds 32.1M $WIF($71M), with a total profit of more than $86M!
The largest holder of $WIF borrowed 4.5M $USDC from #Kamino to buy 2.55M $WIF at $1.76 again 5 hours ago!
This whale now holds 31.2M $WIF($57.4M), with a total profit of more than $74M!
This whale spent $226K to buy 19.86M $WIF at only $0.0114 from Dec 13 to Dec 15, 2023, then registered a domain of "binance-insider.sol" and spent 86,738 $SOL($8.92M) to buy 17.23M $WIF in one transaction.
Check all his trades on $WIF via the image below.
Address:
https://solscan.io/account/mmEAfWkuYjE7Za8oPUkUgY5VmWfNs627qw7jedG4dzc#transfers
🚀 Kamino Introduces Whitelisted Reserves Following Solana Exploit
Kamino has launched Whitelisted Reserves, a smart contract feature designed to restrict lending vault allocations to reserves approved by the protocol. According to NS3.AI, this development comes shortly after the approximately $270 million exploit of the Drift Protocol on Solana. The new feature is now active on all vaults displayed on Kamino's frontend, with withdrawals still dependent on available liquidity.
#Kamino#WhitelistedReserves#Solana#Exploit#LendingVaults#NS3AI#DriftProtocol#SmartContract#CryptoSecurity#SOL
🚀 Solana's Neutral Trade Responds to Drift Attack Impact
Neutral Trade, a quantitative strategy sharing platform within the Solana ecosystem, announced that it is assessing the impact of the Drift attack on its platform and users. According to Foresight News, the team is awaiting further investigation results from Drift. The update includes the suspension and removal of all 'Drift Architecture' vaults from the homepage, although users can still view related positions on the portfolio page. Currently, the homepage only displays the 'Neutral Strategy' proprietary strategy vaults, which are operating normally and have not suffered any losses.
The 'Neutral Strategy' vaults have undergone independent audits by Halborn, Offside Labs, and Quantstamp, and are integrated with FORDEFI's enterprise-grade security solutions. Although the NT Earn vaults had Drift position configurations, Neutral's risk engine detected anomalies during the attack and preemptively withdrew funds to Jupiter Lend and Kamino, preventing any losses.
Neutral Trade is committed to advancing security upgrades and is considering joining the STRIDE ecosystem security program supported by the Solana Foundation. Previously, Neutral Trade reported a loss of approximately $3.67 million due to the Drift attack.
#Solana#NeutralTrade#DriftAttack#CryptoSecurity#DeFi#Blockchain#STRIDE#JupiterLend#Kamino#QuantitativeStrategy#SOL#JUP