gpt4 book ai didi

php - 服务器端集群?

转载 作者:可可西里 更新时间:2023-11-01 12:20:57 26 4
gpt4 key购买 nike

我拼命寻找可以处理多达 50 000 个标记的正确解决方案(如果服务器可以处理,为什么不处理更多)我的服务器和我已经这样做了好几天。


概念是这样的:

enter image description here


  • 集群服务器的最佳解决方案/语言是什么边?我不是在寻找庞大的工作代码,但我需要被推向正确的方向。
  • 如何“缓存”“标记”已经加载的集群/标记,以便您放大/缩小或平移 map 时不会重新加载已经加载的标记/集群吗?

理论:

正确的做法与此类似:

  • 如果 map 被缩小并且有很多标记,在server
  • 中处理聚类
  • 如果 map 放大到所有标记都不再适合视口(viewport)的点,则仅聚类视口(viewport)中的标记 - 也是服务器
  • 如果缩放变得太大以至于视口(viewport)中的标记数量变小(例如< 500) cluster in browser via JS

我可以在服务器端使用的数据,也可以通过 JSON 发送到浏览器:

  • 在发出请求时通过 ajax 将 map 边界发送到服务器
  • 数据库查询的标记总数
  • 来自数据库查询的标记坐标
  • 可能是我目前没有意识到的其他重要/有用的东西

最佳答案

我正在使用具有 50,000 100,000 个多边形的谷歌地图应用程序 事实证明,将多边形组织成一系列区域(工作表逻辑、区域或类似区域)的可能性非常有用。使用通过 ajax 发送到服务器的已显示区域数组以及您绑定(bind)的坐标允许我仅选择尚未显示的区域,从而减少带宽分配和渲染多边形的时间,

对于其余的策略是正确的。为了进行更彻底的评估,应该深入了解社会 SO 中几乎不可行的技术。

对于服务器端语言,它们都很好,我个人现在正在使用 PHP 和 Yii2 框架以及用于 MySQL 的 PDO 驱动程序。重要的是使用一个环境可以非常轻松高效地访问数据库。

在这些条件下,使用良好的集群组织以及在缩放级别允许时向区域显示多边形使得应用程序 google maps 性能非常好

请注意,标记的出现速度比多边形快,因为它涉及的坐标数量和图形特征较少。

对于像您这样的一般性问题,很难在网上找到好的答案。对于区域取决于您管理的区域的大小和标记的平均密度。对于不靠近极点的区域,您可以使用一小部分坐标。或者如果您的地理点具有与区域相关的某些属性,您可以使用它们。您可以在线找到用于将缩放与区域的近似尺寸联系起来的公式。还取决于标记的收集是如何完成的。就我而言,在收集过程中,我评估了满足此需求的一些属性。

为了检查一个标记或一组标记是否已经在 map 中,我使用简单的矢量并使用它(通过 ajax)与服务器进行动态交换。第一次 vector 是空的,并且 vectore 逐渐包含用于“知道”已经显示的内容的元素。

关于php - 服务器端集群?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34564526/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com