mongodb3.6 (四)net 客户端如何连接、访问mongodb集群
2024-10-13 12:00:02
前言
在是一篇文章mongodb如何做数据备灾 中已经介绍mongodb集群是如何工作,可能很多人都有这样一个疑问:客户端如何知道主服务挂了呢?这一篇文章将介绍如何在net中访问这个集群。
第一步、安装MongoDB.Driver
在demo中,打开nuget安装MongoDB.Driver,如下图所示:
第二步、配置MongoClient构造
从上图中,可以看到,这个集群只有两个mongodb实例40001,40002
第三步、运行demo
循环100次,写入数据;当人为停止一个主mongodb时,将会捕捉异常。
运行结果如下:
可以看到,当人为停止主mongodb服务,在客户端将会捕捉到异常。在实际项目中,需要考虑如何处理这个异常,比如j将数据放到一个队列中,下次重发;又或者做记录日志文件等。
在超时时间(默认30秒)允许范围内,Mongodb集群没有选举出新的主服务器之前,程序是处于阻塞状态的。这个选举过程大概耗时2-3秒。当从集群中选举新的主服务器后,程序将继续执行。
最新文章
- Nginx 遇到的问题
- STM32移植RT-Thread的串口只能接收一个字节数据的问题
- Jmeter之Bean shell使用(二)
- HTML5 Canvas rect()和strokeRect() 的区别
- 异步解压ZIP文件
- Java异常处理之try-catch-finally
- android bindService()
- [转载]C#开源项目(国外的还是很多)
- Javascript进阶篇——总结--DOM案例+选项卡效果
- 代码管理器 TFS2013
- Python验证码通过pytesser识别
- Swift:消除Null值
- 如果BarTender出现卸载不干净的问题如何处理
- 在IE10下,DropDownList的AutoPostBack不能触发
- Redis数据结构(三)
- Centos6.9下PXE安装centos 7
- Java笔记8:Hibernate连接Oracle
- for-in和for 循环 的区别
- Python可执行对象——exec、eval、compile
- BZOJ2844: albus就是要第一个出场(线性基)
热门文章
- Cocos2D结合CoreGraphics实现RPG人物中空黑洞吸入效果
- 1049. Counting Ones (30)
- Intent的Data和Type和Flag属性-amdroid学习之旅(五十一)
- svn 回退/更新/取消至某个版本命令详解
- USB OTG原理+ ID 检测原理
- pig的内置函数小总结(不全)
- 【Android 系统开发】 编译 Android文件系统 u-boot 内核 并烧写到 OK-6410A 开发板上
- Linux多线程实践(4) --线程特定数据
- Java虚拟机结构
- 敏捷测试(7)--基于story的敏捷基础知识