`
xinlnix
  • 浏览: 3492 次
  • 来自: ...
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

多服务器实现乐观锁的问题

阅读更多
有N台服务器,其中大部分运行hibernate 访问数据库,一台短信服务器用Delphi,一台内网采集硬件信息的服务器用了VC+ADO+ODBC。所有服务器均可能更新数据库中一个表中同一行,现在该行使用version,但对短信服务器,硬件信息服务器无效,如何处理才能保证乐观锁呢?听说用如下方法

create procedure update_info
  @a1 int,@b1 int,@id1 int
as
begin
update info set a=@a1,b=@b1 where id=@id1

end

所有程序调用此存储过程,能保证乐观锁更新不出问题吗?——什么原理呢?
如果是这样的话,有许多表同时并发更新的话, 每个表都要一个这样的存储过程吗?
如果是这样的话,每次向表中加一列,企不要再修改很多存储过程吗?
分享到:
评论
1 楼 xinlnix 2008-10-13  
Hibernate 调用存储过程还存在无法确定当前PO对象的状态问题吧?

相关推荐

    node+js页面乐观锁帧同步示例源码

    在IT行业中,乐观锁是一种重要的并发控制策略,用于管理共享...通过分析这个示例源码,开发者可以学习如何在Node.js和JavaScript环境中实现乐观锁,并理解如何将这种技术应用于Web游戏或其他需要实时同步的应用场景。

    redis的高级事务CAS(乐观锁).rar

    这样就可以实现乐观锁的逻辑:先 `WATCH` 键,然后执行一系列操作,最后 `UNWATCH` 或者 `EXEC`。如果在 `WATCH` 和 `EXEC` 之间键的值被其他客户端修改,那么事务将失败,否则更新键的值。 举个例子,假设我们想...

    一个微服务 Spring Boot 整合Redis 秒杀 ,全局唯一ID,乐观锁解决库存超卖,Jmeter 测试 每秒千万级并发

    项目实现会涉及Spring Boot启动类、Redis连接配置、乐观锁实现、秒杀逻辑处理以及JMeter测试脚本等组件。 综上所述,这个项目涵盖了微服务、缓存策略、并发控制、性能测试等多个关键知识点,旨在构建一个稳定且高...

    redis 用watch 限制 乐观锁 做秒杀 demo

    "redis 用watch 限制 乐观锁 做秒杀 demo"这一主题,正是针对这个问题提出的一种解决方案。这里我们将深入探讨Redis的`WATCH`命令、乐观锁的概念以及如何利用它们来实现高效的秒杀系统。 首先,让我们了解`WATCH`...

    Elasticsearch 并发修改乐观锁

    1. **版本控制**:Elasticsearch使用版本控制实现乐观锁。每个文档都有一个唯一的版本号,初始为1,并在每次更新时递增。当客户端试图更新文档时,它会包含当前已知的文档版本号。如果服务器接收到的版本号与实际...

    分布式锁实现(基于redis-mysql)1

    然而,在分布式环境中,由于多台服务器可能同时访问同一资源,这时就需要借助于分布式锁来确保数据的一致性和并发控制。 本文主要探讨了三种常见的分布式锁实现方式,包括基于Redis、MySQL以及Zookeeper的实现方法...

    C#.net Redis分布式锁源码实现

    使用`INCR`命令可以实现乐观锁,即每次尝试获取锁时增加一个自增计数器,释放锁时检查计数器是否为1,以确认没有其他线程同时持有锁。 5. Lua脚本:为了提高性能和减少网络开销,可以使用Lua脚本来组合多个命令。...

    Hibernate性能(缓存 延迟加载 事务 悲观 乐观锁).ppt

    - **分布式缓存**:在多服务器环境中,为了进一步提高性能,可以使用如Memcached这样的分布式缓存,实现多应用实例间的共享。 **2. Hibernate延迟加载(Lazy Loading)** 延迟加载是一种优化策略,只在真正需要数据...

    RedPacket:抢红包:Spring+mybatis+redis模拟悲观锁、乐观锁、Redis三种处理高并发问题的实现

    本文将基于"RedPacket"项目,深入探讨Spring、MyBatis和Redis在模拟悲观锁、乐观锁以及利用Redis实现并发控制中的应用。我们将首先了解这三种锁机制的基本概念,然后逐一分析它们在该项目中的实现方式。 ### 一、...

    基于 Springboot + Redis + Kafka 的秒杀系统,乐观锁 + 缓存 + 限流 + 异步,TPS.zip

    在秒杀场景下,可以使用版本号或时间戳实现乐观锁,防止高并发下的数据冲突。例如,每个商品都有一个版本号,当用户尝试购买时,会携带当前版本号,服务器端比较版本号,如果一致则更新并返回新的版本号,不一致则...

    基于 Springboot + Redis + Kafka 的秒杀系统,乐观锁 + 缓存 + 限流 + 异步.zip

    综上所述,这个基于 Springboot、Redis 和 Kafka 构建的秒杀系统,利用了乐观锁避免并发冲突,Redis 提供高效缓存,Kafka 实现异步消息处理以及限流策略保证系统稳定性,从而实现了性能的巨大提升,能够应对大规模的...

    通讯录-客户端&服务器

    6. **云备份与云还原**:通过服务器实现云备份和云同步,涉及到了网络编程和API接口设计。开发者需要使用HTTP请求库(如OkHttp或Retrofit)来发送请求,与服务器进行数据交换。同时,需要设计RESTful API,实现数据...

    查看同步的服务器页面

    数据库管理系统提供了事务处理、乐观锁、悲观锁等机制来保证同步。 4. **分布式系统同步**:在多服务器环境下,为了保持各个节点的数据一致,需要使用分布式协调服务,如Zookeeper、etcd或Consul,它们提供锁服务、...

    InterBase服务器的LOCK策略

    **InterBase服务器的LOCK策略...总的来说,理解InterBase服务器的锁策略不仅有助于优化数据库性能,还能预防潜在的问题,如死锁和数据不一致。深入研究这一主题,对于有经验的C++开发者在数据库领域的工作将大有裨益。

    基于 Springboot + Redis + Kafka 的秒杀系统,乐观锁 + 缓存 + 限流 + 异步

    一致性:秒杀商品减库存的实现方式同样关键,有限数量的商品在同一时刻被很多倍的请求同时来减库存,在大并发更新的过程中都要保证数据的准确性。 高可用:秒杀时会在一瞬间涌入大量的流量,为了避免系统宕机,保证...

    行业分类-设备装置-一种实现文件读取和或写入的方法以及数据服务器.zip

    数据服务器需要实现并发控制机制,如锁、乐观锁、版本控制等,以确保数据的一致性和完整性。 5. **分布式存储**:随着大数据的发展,单个服务器可能无法满足存储需求,因此数据服务器可能采用分布式存储系统,如...

    游戏服务器控制,可以帮助设计游戏服务器开发

    8. **数据存储与同步**:游戏状态需要在服务器之间保持一致,这涉及数据库操作和数据同步算法,如乐观锁、悲观锁或MVCC(多版本并发控制)。 9. **安全机制**:防止作弊、DDoS攻击和数据泄露是游戏服务器必须考虑的...

Global site tag (gtag.js) - Google Analytics