首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

面试官问我:你们数据库怎么架构

另外,主库可以不用索引,线上从库和线下从库也可以建立不同索引(线上从库如果有多个还是要建立相同索引,不然得不偿失;线下从库平时开发人员排查线上问题时查库,可以建更多索引)。...第二,主库单点问题,笔者暂时没想到很好解决方案。 注:思考一个问题,一台从库挂了会怎样?读写分离之读负载均衡策略怎么容错? 方案四:双主+主从架构,看似完美的方案 ?...就是大家常说“半同步复制”semi-sync。这可以利用数据库原生功能,实现比较简单。代价写请求时延增长,吞吐量降低。 5、数据库中间件,引入开源(mycat等)或自研数据库中间层。...; 2、分库分表带来好处巨大,但同样也会带来一些问题,详见数据库之分库分表-垂直?...3、不管主备+分库分表还是主从+读写分离+分库分表,都要考虑具体业务场景。某8到家发展四年,绝大部分数据库架构还是采用方案一和方案一+分库分表,只有极少部分用方案三+读写分离+分库分表。

93420
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    开发知识 | 即时通讯怎么做到

    TCP/IP是以数据流形式,将传输数据经分割、打包后,通过两台机器之间建立起虚电路,进行连续、双向、严格保证数据正确性文件传输协议。...而UDP是以数据报形式,对拆分后数据先后到达顺序不做要求文件传输协议。 QQ就是使用UDP协议进行发送和接收消息。...当你和你OICQ伙伴进行聊天时,如果你和对方连接比较稳定,你和他聊天内容都是以UDP形式,在计算机之间传送。如果你和对方连接不是很稳定,QQ服务器将为你们聊天内容进行中转。...➡️ 一般步骤: 首先,用户A输入自己用户名和密码登录即时通讯服务器,服务器通过读取用户数据库来验证用户身份,如果用户名、密码都正确,就登记用户AIP地址、IM客户端软件版本号及使用TCP/UDP...早期IM系统,在IM客户端和IM服务器之间通讯采用采用UDP协议,UDP协议不可靠传输协议,而在IM客户端之间直接通讯中,采用具备可靠传输能力TCP协议。

    93810

    数据库索引和锁到底怎么回事

    1.9索引总结 索引在数据库一个非常重要知识点!上面谈其实就是索引最基本东西,要创建出好索引要顾及到很多方面: 1,最左前缀匹配原则。...2.1为什么需要学习数据库锁知识 不少人在开发时候,应该很少会注意到这些锁问题,也很少会给程序加锁(除了库存这些对数量准确性要求极高情况下) 一般也就听过常说乐观锁和悲观锁,了解过基本含义之后就没了...呃...如果还是不太清楚,我们来看看InnoDBMVCC怎么吧(摘抄《高性能MySQL》) ? ? 至于虚读(幻读):指在一个事务内读取到了别的事务插入数据,导致前后读取不一致。...悲观锁数据库层面加锁,都会阻塞去等待锁。 2.3.1悲观锁 所以,按照上面的例子。...也就是说,如果张三使用 select...forupdate,李四就无法对该条记录修改了~ 2.3.2乐观锁 乐观锁不是数据库层面上锁,需要自己手动去加锁。

    1.1K30

    优秀前端开发工程师简历怎么

    早就不记得哪个邮件放简历,再挨个去翻附件(有的PDF,有的Word,有的 HTML,有的干脆一个 zip,有的一个网址,有的干脆把简历粘贴在邮件正文。。。)...第二,务必要有 word 或 pdf 文件简历 现在好多人简历直接挂网上,或者 HTML ,这种简历我处理起来很费劲。...技术探底一般怎么做?看作品!如果擅长 Node,就看看 NPM 上提交模块,install 下来演示下,讲讲核心代码。如果一个组件,就直接看 Demo,讲设计封装思路。...如果一套脚手架工具,直接画架构图,讲原理和适用场景。如果项目,那就 show 下你作为 PM 发 Release 邮件!...如何做? 2. 让你印象最深刻一个(技术)难点,害你搞了很久,最后怎么,有什么心得? 3. 你做时间最久一个项目(或产品),你看到这个项目有哪些问题,你能做什么? 4.

    1.2K10

    最开始时,我怎么搞懂开发思路

    - 这个项目该怎么做? - 从哪下手呢? 在我刚开始做前端,写js时候,这个问题曾经长久困扰着我。...就是例如,function、var、object、array、...等方法,单个js方法拿出来我都会。但当时我就是不知道该怎么用JS去实现一个UI设计图,没思路。...简单说,“就是Js语言本身,和实际业务需求,并没有连接在一起”,像油和水一样。 这种情况从哪里开始改变呢? 我记得做一个什么在线网校学生选课系统,当时也是没思路。...Q:既然网页会动,那么谁让它动呢? A:当然上网的人啊。 Q:那这个上网的人,他怎么让网页动呢? A:当然鼠标点来点去呀。 Q:那如果你上网的人,你会怎么在网页上点呢?...A:当然按操作顺序啊。 。。。,喔,明白了,原来这样,“你做东西,别人要怎么操作?这个操作顺序,大体上就是业务逻辑”。

    55220

    开发者必藏:WordPress 数据转义怎么处理

    要了解 WordPress 数据转义怎么处理,首先要从 PHP 古老特性魔术引号(Magic Quotes)开始说起,尽管该特性自 PHP 5.3.0 起被废弃,并自 PHP 5.4.0 起被移除...进行开发时候,一定要记住这个,不然会引起一些莫名其妙问题,然后根本不知道怎么去解决。...WordPress 开发者应该怎么处理呢 我总结了一下,关于 WordPress 转义有以下几个要点要记一下,我每次碰到问题时候,都会打开这篇文章回顾下面这几个要点,很多问题,都会迎刃而解。...首先要记住: WordPress  _GET、_POST、_COOKIE、_SERVER 和  数据插入数据库之前,如果数据已经被转义,要进行反转义操作,因为 WordPress 数据库操作类有自己转义函数...注意例外情况:选项新增(add_optioon())和修改(update_option())函数内部没有进行进行反转义操作,所以如果有需要的话,开发者要自己进行反转义操作,一般不需要。

    1.6K30

    《网络怎么连接

    标题《网络怎么连接》 总体示意图 最基本说,网络由web服务器和浏览器(客户端) 以及一套安全准确稳定传输服务器和客户端信息机制组成。...这里假设我们客户端计算机连接到家庭或公司局域网中,然后通过FTTH等宽带线路接入互联网。这样,网卡发送信息包会经过交换机等设备,到达用来接入互联网路由器。路由器后就是互联网。...接入网连接到签约网络运行商并接入被称为接入点设备。接入点实体一台专为运营商设计路由器,它就是离我们家最近邮局,我们投递到邮筒信件需要先收集到邮局进行分拣,然后送出。...第5章防火墙、缓存服务器 通过互联网骨干网后,数据包到达了web服务器所在局域网。然后会有防火墙,它会检查进入包。就像门口保安它会拒绝危险包。...当通过防火墙之后可能会遇到缓存服务器,对于一些网页中可以重读使用数据会被保存在缓存服务器中,如果要访问数据正好在缓存服务器中那么就不用劳烦web服务器直接从缓存服务器中读取。

    17010

    RPC怎么执行

    我们都知道rpc远程过程调用意思,通俗说,就是可以跨节点调用其他节点上方法。当然这里要跟rmi区分开来,他们之间有类似的地方。rmi远程方法调用,java领域特有的。...而rpc不区分语言,发送端和接收端可以是异构。 这篇文章不会具体说rpc整个过程,因为在之前文章中,已经详细讲解了rpc发送逻辑,这里接着说rpc接收逻辑。...,到底怎样找到本地方法进行执行?...RPC接收端启动 我们先来看下rpc接收端怎么启动,并跟rpc服务端进行连接?..._on_incoming) 上面的代码创建了一个监听器,由监听器来监控rpc请求到来。 请求监听器 监听器怎么呢?

    45630

    网页怎么构成

    总第60篇 所谓网络爬虫就是从网页中指定位置找到对应数据并下载,要想知道数据在什么位置,我们需要首先知道网页中数据如何显示与储存,这篇主要是分享一下最基本网页形式html。...01|什么HTML: HTML用来描述网页一种语言。 HTML 指的是超文本标记语言 (Hyper Text MarkupLanguage)。...HTML 标签由尖括号包围关键词,比如 HTML 标签通常是成对出现,比如 和 ,标签对中第一个标签开始标签,第二个标签结束标签。...(横线上方为html语言,横线下方为经过浏览器解析以后显示到屏幕上内容) 几种常用标签实例: 1、HTML链接 链接通过 标签进行定义。 注释:在 href 属性中指定链接地址。...04|HTML 属性: HTML属性用来描述标签。 属性提供了有关 HTML 元素更多信息。 属性总是以名称/值对形式出现,比如:name="value"。

    1.9K80

    Synchronized怎么实现

    synchronizedJava中一个很关键同步实现机制内置关键字,主要用来加锁,synchonized 所添加锁有以下几个特点: 互斥性 同一时间点,只有一个线程可以获得锁,获得锁线程才可以处理被...Monitor 其实是一种同步工具,也可以说是一种同步机制,它通常被描述为一个对象,主要特点: 对象所有方法都被“互斥”执行。... 修饰 get 或 set 方法)状态转换消耗时间有可能比用户代码执行时间还要长,所以说 synchronized  java 语言中一个重量级操纵。...所以,在 JDK1.6 中出现对锁进行了很多优化,进而出现轻量级锁,偏向锁,锁消除,适应性自旋锁,锁粗化(自旋锁在 1.4 就有 只不过默认关闭,JDK1.6 默认开启),这些操作都是为了在线程之间更高效共享数据...因此,我们对synchronized实现可以总结为以下: synchronized  Java 中一个很重要关键字,主要用来加锁。

    6210

    怎么思考

    这不是一个互联网团队该有的现象,如果永远本着自己只是一个打工心态做事情,永远成长不了,你得去接触那些比你优秀的人,学习他们怎么思考问题怎么处理问题。...或许有,或许没有,不管谁,每天都搞得很疲惫这样生活不可持续性,迟早都会出现职业倦怠感。所以这时候问题来了,我们该怎么做才能够让自己摆脱这样生活?...了解笔者同学应该知道笔者现在Bugly做SDK开发,跟以往不同,我面对不再普通用户,而是开发者,每天都要解答一些开发者关于我们SDK各种问题,有接入问题,有SDK问题,还有一些不知道是什么问题问题...虽然我们有技术客服,但客服更多只能解答一些简单接入问题,一些开发者使用SDK问题还是得我们SDK开发者来亲自解答。...--《淮南子·说林训》 笔者也希望能够多分享一些自己知识和想法,但别人想法始终是别人,还不如传授一些给人学习知识方法,因为只有这样才能真正解决问题。 那么最后问题来了,你怎么思考呢?

    46030

    bug怎么诞生

    一、概念Bug,指软件中缺陷,它可能会引发软件失效。二、bug由来Bug一词原意“昆虫”或“虫子”;而在电脑系统或程序中隐藏着一些未被发现缺陷或问题,人们也叫它“bug”。...Bug创始人格蕾丝·赫柏(Grace Murray Hopper),一位为美国海军工作电脑专家,也是最早将人类语言融入到电脑程序的人之一。...这还不是一个完全电子计算机,它使用了大量继电器,一种电子机械装置。第二次世界大战还没有结束。哈珀小组日以继夜地工作。机房一间第一次世界大战时建造老建筑。...等等,这个直接关系到个人利益和前途,另外测试存在也是为了让程序没有bug,作为开发我们更应该和测试配合打造更好产品。...五、bug解决处理方式确认bug重复bug不是bug无法重现不予解决设计如此延期修改bug能更好让程序运行,一般处理bug方式和测试沟通确认,bug就尽快修复,其他原因和测试协商沟通,有些bug

    1.2K40

    卷积怎么【卷】

    卷积在图像处理中应用非常广泛,可以说理解了卷积,就可以理解图像处理算法半壁江山,也不知道这个说法是否夸张了。 但是都说卷积卷积,那卷积到底怎么个卷法呢?本文尝试解答这一问题。...我们提取下重点公式写在下面,记为公式1: 以上公式1最令人迷惑也是最需要注意部分在于,在等式左边,自变量,然而等式右边自变量却变成了,更令人疑惑——右边自变量不是也就算了,竟然还出现了一个...如果都在变,那到底怎么个变法? 这些问题还是需要慢慢道来。我们先看一个卷积稍微通俗一点解释。 卷积 (1)即是通过两个函数和生成第三个函数一种数学算子。...积分 现在较为完整公式3样子了,这里为了能够更好地表达,我们把区间从改为,即画出 ? int 注意了,在上面的所有过程中,一直不变,变。...即我们上面一直在做公式2右边计算,公式2如下: 不论怎么变化,最后一旦积分,等式右边就成了一个确定数字,一个常量。 趣谈编程注:积分确定了上下限,面积也就随之确定了。 一个对应一个嘛。

    1.1K20

    入选 Gartner 全球数据库魔力象限,腾讯云数据库怎么做到

    ,尤其在核心交易场景方面得到了非常广泛应用。...新一代云原生 TDSQL-C 关键技术突破 分享嘉宾:刘迪,腾讯云数据库产品总监 议题简介: 云应用程序这些需求为云原生数据库提供了新机会,而传统企业内部数据库系统无法完全满足这些需求。...腾讯云原生数据库经过多年研发和打磨,所实现计算、内存与存储资源解耦“日志即数据库”架构、HTAP、Serverless 等特性已是全球首创或业内领先技术,同时其性能对比传统云数据库达到数倍大幅度提升...结合海量数据存储、高频交易场景、流量洪峰 / 不可预估场景、开发测试等周期性峰值业务场景行业案例,深入解析新一代云原生数据库 TDSQL-C 产品特性、技术亮点以及未来发展趋势。...,有必要实现 Redis 不具备 TP 能力,从而更好符合用户对存储数据库诉求, 同时作为 NoSQL 数据库还需要提供高性能 TP。

    1K20

    什么TRTC?TRTC怎么实现

    接下来,从技术角度去分析,什么TRTC 刚刚我们已经了解到TRTC定义实时音视频通信,那么它是如何实现呢?...SDK软件开发工具包,由开发人员使用其工具包提供接口,去对接TRTC云服务。同时,各平台SDK由于使用协议和规则不同,使用方面在风格统一模式下,又略有差异。 云服务是什么?...这个涉及面比较广,粗略说一下吧,一则云服务器,以TRTC为例,通过TRTCSDK,可以访问到TRTC专有服务器。...2、TRTC如何实现 作为一名程序员,那当然要先了解TRTC如何实现 以web App之间视频通讯为例,上面了解到可以通过SDK去联系TRTC云服务,那么,具体如何进行联系呢?...一个小团体,或者两个人,或者多个人,互相之间进行沟通,这就是房间概念。

    23.2K134

    拿到大厂前端offer前端开发怎么回答面试题

    $set 实现原理:如果目标数组,直接使用数组 splice 方法触发相应式;如果目标对象,会先判读属性是否存在、对象是否响应式,最终如果要对属性进行响应式处理,则是通过调用 defineReactive...Vue路由守卫有哪些,怎么设置,使用场景等常用两个路由守卫:router.beforeEach 和 router.afterEach每个守卫方法接收三个参数:to: Route: 即将要进入目标 路由对象...也就是说你在.finally()函数中无法知道Promise最终状态resolved还是rejected它最终返回默认会是一个上一次Promise对象值,不过如果抛出一个异常则返回异常...(3)JPEG有损、采用直接色点阵图。JPEG图片优点采用了直接色,得益于更丰富色彩,JPEG非常适合用来存储照片,与GIF相比,JPEG不适合用来存储企业Logo、线框类图。...(7)WebP谷歌开发一种新图片格式,WebP同时支持有损和无损压缩、使用直接色点阵图。从名字就可以看出来它是为Web而生,什么叫为Web而生呢?

    32580

    拿到大厂前端offer前端开发怎么回答面试题

    HTML 规范 (HTML5) 定义了“⽹络数据库”,这是⼀个完整(但是轻便)浏览器内数据库。值得注意,和⼤多数浏览器不同,Chrome 浏览器每个标签⻚都分别对应⼀个呈现引擎实例。...//模块:例如解读CSS,图片如何转换,压缩 module:{}, //插件,用于生产模版和各项功能 plugins:[], //配置webpack开发服务功能 devServer...描述一下npm run dev / npm run build执行哪些文件通过配置proxyTable来达到开发环境跨域问题,然后又可以扩展和他聊聊跨域产生,如何跨域最后可以在聊聊webpack...}) } else return reject(new TypeError("Argument is not iterable")); });}说一下怎么取出数组最多一项...执行操作相反

    60030

    在线教育平台开发中,作业批改功能怎么实现

    作业批改功能在线教育平台中一个常用功能,它可以让教师在后台进行作业批改,教师作业批改完成后,学生可以在手机端查看作业批改内容。...下面我们介绍一下再在线教育平台开发过程中,作业批改功能怎么实现?..._canvas.add(obj);     }); }); 调用该接口后,便可以显示学生上传作业图像。 接着便可以在图像进行绘图,写字,添加语音和视频等编辑操作。从而达到在线修改作业目的。...除了上述功能外,还可以撤销或者重做我们操作,也可以进行放大和还原操作,等修改完作业后,便可以将修改后作业上传到服务端进行保存提供给学生在手机进行预览。...手机端预览如下图 图片6.png 以上在线教育平台开发中,作业批改功能实现过程。

    1.4K31
    领券