gpt4 book ai didi

google-app-engine - 在 Google App Engine 上创建大型站点地图?

转载 作者:太空宇宙 更新时间:2023-11-03 15:27:53 24 4
gpt4 key购买 nike

我的网站有大约 100,000 个不同的页面。

(1) 如何为所有这些链接创建站点地图?我是否应该将它们平放在一个大型站点地图协议(protocol)兼容文件中?

(2) 需要在有 1000 个项目查询限制的 Google App Engine 上实现此功能,并且我所有的个人站点 URL 都存储为单独的条目。我该如何解决这个问题?

最佳答案

站点地图不得超过 10MB,列出的 URL 不得超过 50,000 个,因此您需要以某种方式将其分解。

您将需要某种分片策略。我不知道你的数据是什么样的,所以现在假设每次你创建一个页面实体时,你都为它分配一个 1 到 500 之间的随机整数。

接下来,创建一个 Sitemap index ,并为每个索引值吐出一个站点地图链接:

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>http://example.appspot.com/sitemap?random=1</loc>
</sitemap>
<sitemap>
<loc>http://example.appspot.com/sitemap?random=2</loc>
</sitemap>
...
<sitemap>
<loc>http://example.appspot.com/sitemap?random=500</loc>
</sitemap>
</sitemapindex>

最后,在您的站点地图页面上,查询页面并过滤您的随机索引。如果您有 100,000 个页面,这将为您提供每个站点地图大约 200 个 URL。

此处略有不同的策略是为每个页面提供一个自动递增的数字 ID。为此,您需要一个计数器对象,该对象在每次创建新页面时被事务性锁定并递增。这样做的缺点是您无法并行创建新的页面实体。好处是您可以更好地控制页面的布局方式,因为您的第一个站点地图可以是第 1-1000 页,依此类推。

关于google-app-engine - 在 Google App Engine 上创建大型站点地图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3193565/

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