电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

在Oracle數據庫中處理數據的高并發響應

瀏覽:21日期:2023-11-27 14:04:33

某些系統可能對系統應付數據高并發的響應要求比較高 (如: 飛行航空訂票系統). 本文采用Oracle的lock table來解決此問題:

Procedure中關鍵code如下:

---------------------------------------

lock table tb_book_ticket in share mode;

...

insert into tb_book_ticket (id, scheduled_flight, ticket_no, book_time) values (ID.nextval, v_scheduled_flight, v_ticket_no, SYSDATE); -- mark1

... -- mark2

select count(*) into v_book_count from tb_book_ticket where scheduled_flight = v_scheduled_flight; -- mark3

if v_book_count <= v_book_max_count then

v_result := 'book successfully';

commit;

else

v_result := 'book unsuccessfully';

rollback;

end if;

return v_result;

-------------------------------------------------------------

以上有2個地方需注意:

1) 采用 lock table table_name in share mode 方式而非 lock table table_name in exclusive mode 提高并發性處理, 盡量減少不必要執行等待.

2) 按常規思路, 可能會將 mark1 與 mark3 順序交換, 但此舉不行

-------------------------------------------------------------

select count(*) into v_book_count from tb_book_ticket where scheduled_flight = v_scheduled_flight; -- mark3

... -- mark2

if v_book_count < v_book_max_count then

insert into tb_book_ticket (id, scheduled_flight, ticket_no, book_time) values (ID.nextval, v_scheduled_flight, v_ticket_no, SYSDATE); -- mark1

-- mark4

commit;

end if;

-------------------------------------------------------------

試想若 userA 執行到 mark4, 而同時 userB 執行到 mark3, 就可能會出現由于 userA 尚未commit 而導致 userB 訂到機票但實際沒有座位的情況。

若確希望使用常規邏輯來實現, 需要用到 Oracle 的表的讀鎖功能 (精細訪問策略), 而此非本文范圍, 且其對于SYS用戶無效。

標簽: Oracle 數據庫
主站蜘蛛池模板: 校园气象站_超声波气象站_农业气象站_雨量监测站_风途科技 | YJLV22铝芯铠装电缆-MYPTJ矿用高压橡套电缆-天津市电缆总厂 | 冷却塔改造厂家_不锈钢冷却塔_玻璃钢冷却塔改造维修-广东特菱节能空调设备有限公司 | 万濠投影仪_瑞士TRIMOS高度仪_尼康投影仪V12BDC|量子仪器 | 桁架楼承板-钢筋桁架楼承板-江苏众力达钢筋楼承板厂 | 九州网址_专注于提供网址大全分享推广中文网站导航服务 | 数显水浴恒温振荡器-分液漏斗萃取振荡器-常州市凯航仪器有限公司 | 环讯传媒,永康网络公司,永康网站建设,永康小程序开发制作,永康网站制作,武义网页设计,金华地区网站SEO优化推广 - 永康市环讯电子商务有限公司 | 爱科技iMobile-专业的科技资讯信息分享网站 | 通风气楼_通风天窗_屋顶风机-山东美创通风设备有限公司 | 液压压力机,液压折弯机,液压剪板机,模锻液压机-鲁南新力机床有限公司 | 选矿设备-新型重选设备-金属矿尾矿重选-青州冠诚重工机械有限公司 | 捆扎机_气动捆扎机_钢带捆扎机-沈阳海鹞气动钢带捆扎机公司 | 山东太阳能路灯厂家-庭院灯生产厂家-济南晟启灯饰有限公司 | 洛阳装修公司-洛阳整装一站式品牌-福尚云宅装饰 | 翻斗式矿车|固定式矿车|曲轨侧卸式矿车|梭式矿车|矿车配件-山东卓力矿车生产厂家 | 深圳市宏康仪器科技有限公司-模拟高空低压试验箱-高温防爆试验箱-温控短路试验箱【官网】 | 干洗加盟网-洗衣店品牌排行-干洗设备价格-干洗连锁加盟指南 | 移动厕所租赁|移动卫生间|上海移动厕所租赁-家瑞租赁 | 油冷式_微型_TDY电动滚筒_外装_外置式电动滚筒厂家-淄博秉泓机械有限公司 | 深圳品牌设计公司-LOGO设计公司-VI设计公司-未壳创意 | 云南丰泰挖掘机修理厂-挖掘机维修,翻新,再制造的大型企业-云南丰泰工程机械维修有限公司 | 防爆型气象站_农业气象站_校园气象站_农业四情监测系统「山东万象环境科技有限公司」 | 搪瓷反应釜厂家,淄博搪瓷反应釜-淄博卓耀 | 诗词大全-古诗名句 - 古诗词赏析 | 走心机厂家,数控走心机-台州博城智能科技有限公司 | 在线钠离子分析仪-硅酸根离子浓度测定仪-油液水分测定仪价格-北京时代新维测控设备有限公司 | 交流伺服电机|直流伺服|伺服驱动器|伺服电机-深圳市华科星电气有限公司 | 学习安徽网| 自动化生产线-自动化装配线-直流电机自动化生产线-东莞市慧百自动化有限公司 | 衡阳耐适防护科技有限公司——威仕盾焊接防护用品官网/焊工手套/焊接防护服/皮革防护手套 | 玻璃钢型材-玻璃钢风管-玻璃钢管道,生产厂家-[江苏欧升玻璃钢制造有限公司] | EDLC超级法拉电容器_LIC锂离子超级电容_超级电容模组_软包单体电容电池_轴向薄膜电力电容器_深圳佳名兴电容有限公司_JMX专注中高端品牌电容生产厂家 | 沈阳楼承板_彩钢板_压型钢板厂家-辽宁中盛绿建钢品股份有限公司 轴承振动测量仪电箱-轴承测振动仪器-测试仪厂家-杭州居易电气 | Boden齿轮油泵-ketai齿轮泵-yuken油研-无锡新立液压有限公司 | 回转窑-水泥|石灰|冶金-巩义市瑞光金属制品有限责任公司 | 洛阳网站建设_洛阳网站优化_网站建设平台_洛阳香河网络科技有限公司 | 无菌实验室规划装修设计-一体化实验室承包-北京洁净净化工程建设施工-北京航天科恩实验室装备工程技术有限公司 | 雨燕360体育免费直播_雨燕360免费NBA直播_NBA篮球高清直播无插件-雨燕360体育直播 | 馋嘴餐饮网_餐饮加盟店火爆好项目_餐饮连锁品牌加盟指南创业平台 | 广东护栏厂家-广州护栏网厂家-广东省安麦斯交通设施有限公司 |