system-design

    0热度

    1回答

    假设我正在设计一个像Yelp这样的餐厅推荐系统。我需要执行的一些基本事项如下: 用户应该能够添加/删除/更新位置。 考虑到它们的位置(经度/纬度),用户应该能够找到给定半径内的所有附近地点。 用户应该能够添加关于某个地点的反馈/评论。反馈可以包含图片,文字和评分。 从存储的角度来看,我决定为每个地方的纬度,经度,名称,描述和评分都提供像LocationId这样的字段。假设每个LocationId和

    0热度

    1回答

    我正在开发一个web应用程序项目,该项目需要我重构文件上传功能。我们的文件上传功能支持多种上传文件源,例如git repo,nexus URL,zip文件我们也希望在未来支持更多的perforce。在当前的实现中,应用程序有多个端点来处理不同的方法,如getNexusFile(),getGitFile(),getZipFile();在每种方法下,都有从指定源检索文件的实现。 我的想法是通过使用策略

    0热度

    1回答

    我有以下配置的RabbitMQ prefetchCount:1 ACK模式:自动。 我有一个交换和一个队列连接到该交换和一个消费者连接到该队列。根据我的理解,下面的步骤将发生如果队列有多条消息。 在一个通道上队列写入数据。 由于ack模式是自动的,只要队列在通道上写入消息,消息就会从队列中删除。 消息传递给消费者,消费者开始执行该数据。 由于Queue已经得到了前一条消息的确认,Queue将下一个

    2热度

    2回答

    Kong使用Cassandra或Postgres。 Cassandra是知道写重的应用程序。我没有看到Kong api网关是那么多重写,也没有一张表使用Cassandra的重要功能分区键之一。我的疑问是为什么Cassandra被用于Kong,是否有任何特定的原因?我们不能使用RDBMS来实现这一点。

    1热度

    1回答

    我没有找到谷歌或甚至StackOverflow回答这个问题的任何明确的答案。 从我的理解是,使用锁可以打破抽象 锁 线程是不是组合的 但如何和为什么锁断抽象和组合性?

    1热度

    2回答

    我在一次采访中被问到了这个问题。第一部分非常简单,我不得不编写代码来获取数组中最大数量的连续整数。以下是我写的代码: int count = 0, max = 0; for(int i = 1; i < array.length; i++) { if((array[i - 1] + 1) == array[i])) //curr is consecutive to prev

    0热度

    1回答

    登录后获取用户信息的标准方法是什么? POST请求来验证用户/口令和检索响应信息 POST请求来验证用户/密码,随后GET请求来检索信息? 据我所知,GET应该是首选的检索数据,但它似乎是执行两个请求的负担;同时,在POST响应中返回数据感觉很奇怪。哪个应该是首选?

    1热度

    2回答

    在约束视频https://www.hiredintech.com/classrooms/system-design/lesson/55中,叙述者必须估计每月应处理的请求。 达到每月100个MLN新网址的图将要产生后(如缩短的结果),他指出以下近似: - 1)的每个网址具有2周 2的平均寿命)20%的URL生成80%的流量 考虑到上述情况,他做了一些“快速数学”,来到每月1 BN请求的数字来处理。

    0热度

    1回答

    我是一名前端开发人员,我即将开始编写我的第一个后端(使用AWS,因此希望这不会是一场灾难) 。我需要一些指导,可以链接到SO或适当的主题或教程或任何 - 我已经搜索了很长时间,但我可能不知道如何搜索我需要解决的问题。 保持简单:我的客户销售书籍。为了补充这些书籍,我们正在开发一个应用程序。这个应用程序的不同部分将对应不同的书籍,但该应用程序也有其自身的价值(即,您不必拥有一本书来使用该应用程序)。

    0热度

    1回答

    我见过很多人写过Ajax(轮询)vs websocket。我还没有见过任何人提到websocket的缺点。 正如我们所知,每个http请求都需要web-server连接。web服务器可以支持的最大并发连接数量,除此之外,如果请求发出,请求必须等到任何连接都收费。 我简单的http请求(基于轮询)的情况下,当一个请求服务器连接服务器放在池中,并且该连接可以用于下一个请求,所以它是不太可能在简单的ht