Synchronous Calls
Synchronous calls are a communication model where a transaction on one shard must wait for a response from another shard before it can proceed. This ensures that the entire operation is completed in a single, atomic flow, making it easier for developers to build applications.
However, synchronous calls are problematic in sharded blockchains because they create strong dependencies between shards. If one shard is busy or experiences downtime, the entire call chain can be blocked, leading to poor user experience and potential deadlocks.
While synchronous calls provide a simpler mental model for developers, they are generally avoided in high-performance sharded systems in favor of asynchronous models. They are often restricted to intra-shard operations where performance is not compromised by cross-shard latency.