Bingbot is (no longer) default throttled

Recently @neil added built-in support for crawler traffic analysis and blocklisting / allowlisting of crawler user-agents.

One thing that immediately popped up is that bing, consistently, across multiple sites is generating significantly more load than any other crawler.

For example on meta we have the following over about a week:

User Agent Pageviews
Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) 183236
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) 16117
Mozilla/5.0 (compatible; YandexBot/3.0; +http://yandex.com/bots) 15959
Mozilla/5.0 (compatible; AhrefsBot/5.2; +http://ahrefs.com/robot/) 9450
Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html) 5022
Mozilla/5.0 (compatible; DotBot/1.1; http://www.opensiteexplorer.org/dotbot, help@moz.com) 4498
Sogou web spider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07) 3976

Bing is crawling meta at more than 10x the rate of any other crawler. Looking at our richer logs the trend is very clear (and also cross checked):

Looking at a geomap we can see the traffic is very likely coming from Microsoft

Looking at specific ips I can see this is indeed coming from Microsoft using reverse IP lookups.

bing has no qualms hitting meta more than 5000 times in a 3 hour period, Google will not spike at over 800 and usually runs much slower.

Following this commit, bing is default throttled to 60 seconds per request:

https://github.com/discourse/discourse/commit/6179c0ce51bc1d9d814a1baae354d68eb491e9fd

You can remove this throttle bing by editing your slow_down_crawler_user_agents, but we don’t recommend it unless you understand the crawler traffic consequences.

We decided to take this measure to protect Discourse sites out there from being attacked by Microsoft crawlers. I have no idea why bing behaves so badly, my theory is that part of the reason it is crawling so aggressively is cause it is constantly trying to re-validate canonical links. In the logs I can see that 3 times a week it will try to figure out what the canonical page is for a post link. So, for example:

Even though we tell bing the canonical for https://meta.discourse.org/t/topic-stopwatch-theme-component/83939/20 is https://meta.discourse.org/t/topic-stopwatch-theme-component/83939 it does not appear to “trust” us and has to check back 3 times a week.

We have been in contact with Microsoft on this and they are working on it on their end, but resolution is months if not years away, so this is necessary for everyone’s protection in the meantime.

43개의 좋아요

(거의 2년 만에) 현재 상황에 대해 업데이트를 주실 수 있을까요?

1개의 좋아요

업데이트 내용을 말씀드리면, 우리는 큰 문제를 제기했고, 그들은 상황이 개선될 것이라고 약속했지만 이후로 우리에게 연락이 없었습니다.

이제 더 이상 할 일이 있는지 잘 모르겠습니다. 왜냐하면 크롤러가 슬로우다운 명령을 준수하고 있으므로, 문제 해결된 것으로 생각됩니다.

아직도 빙이 취하는 크롤링 방식에 대해 신뢰도가 매우 낮습니다.

8개의 좋아요

마이크로소프트가 “새로운” 빙(Bing)을 도입할 수 있습니다(아니면 이 블로그 게시물을 제가 잘못 읽고 있는 걸 수도 있죠). 그 말에 어떤 의미가 있을까요?

1개의 좋아요

해당 게시물에는 공개 사이트 크롤링 방식과 관련된 Bing의 구체적인 변경 사항에 대한 언급이 없으므로, 해당되지 않을 것으로 보입니다.

7개의 좋아요

Bing 팀은 최근에 엔지니어링 팀을 위한 새로운 Twitter 계정을 만들었고, 저는 이를 활용해 Discourse가 Bing에서 겪고 있는 문제에 대해 알려주기로 했습니다. Bing 팀의 두 분의 관심을 끌기는 했지만, Discourse에 대해 더 잘 아는 분들의 추가적인 도움이 필요합니다. 저는 이 분야에 대해 전문가라고 할 수는 없습니다. X on X / X Post / X Post / X

1개의 좋아요

알려주셔서 감사합니다, Justin. 저는 Bing 크롤링 및 인덱싱 팀을 관리하는 Bing 프로그램 매니저입니다. 말씀하신 대로, 저희 크롤러가 콘텐츠 관리 시스템(CMS)에서 과도하게 크롤링하는 것으로 보아 유감입니다. 저희는 문제를 인지하고 조정을 취했지만, 피드백을 통해 더 많은 조정이 필요할 수 있음을 알 수 있었습니다. 귀하가 저희보다 CMS를 통해 웹사이트에서 어떤 부분을 크롤링하는지 더 잘 알고 계시기 때문에, 저희가 함께 심층 분석할 수 있도록 로그 예시를 직접 저에게 공유해 주시면 좋겠습니다.

현실적으로, 웹사이트가 어떻게 변경되는지에 대해 귀하는 저희보다 더 잘 알고 계십니다. 따라서 최근에는 웹사이트와 콘텐츠 관리 시스템이 저희의 URL 제출 API(Why IndexNow | Bing Webmaster Tools)를 채택하여 추가, 업데이트, 삭제된 콘텐츠에 대한 실시간 인덱싱을 허용하도록 권장하고 있습니다. 이를 통해 최종적으로 변경된 부분만 크롤링할 수 있게 됩니다. 우리는 WordPress용 코드를 오픈소스로 공개했으며([Bing URL Submissions Plugin – WordPress plugin | WordPress.org]), 이를 확인하고 통합해 보시기를 권장합니다. 도움이 필요하시면 지원을 제공하겠습니다.

8개의 좋아요

이 문제는 실제로 Discourse와만 관련이 있는 것이 아닙니다. Bing은 기본적으로 웹사이트를 매우 공격적으로 크롤링하기 때문입니다. @facan

1개의 좋아요

Discourse 팀은 이 문제에 대해 나보다 훨씬 더 많은 것을 알고 있습니다. 저는 단지 이 문제에 대한 여러분의 관심을 끌고 싶었을 뿐이며, 대부분 Discourse 팀이 이어서 처리해 주기를 바라는 마음으로 이렇게 말씀드렸습니다. :slight_smile:

1개의 좋아요

여기 명확한 테스트 케이스가 있습니다:

개발자분들께 이 문제를 전달해 원인을 찾아달라고 요청해 보실 수 있을까요?

5개의 좋아요

샘, 안녕하세요.

저는 빙(Bing) 크롤링 팀을 관리하는 프로그램 매니저입니다. 로그에 따르면 지난 2주 동안 다음 두 URL을 한 번도 가져오지 않았다고 합니다. 해당 URL에 대한 IP 주소를 공유해 주시겠습니까?

감사합니다.
파브리스

1개의 좋아요

그것은 매우 오래된 정보입니다. bingbot은 여기뿐 아니라 모든 기본 Discourse 인스턴스에서 크롤링 지연이 있습니다.

정중함을 위해 14일 동안 메타에서 제거하고, 실제로 이제 더 잘 작동하는지 확인해 보겠습니다.

12개의 좋아요

호기심으로 물어보는데, 여기 상태 업데이트가 있나요?

1개의 좋아요

아직 조사 중이며, 결과는 몇 주 내에 발표될 예정입니다

7개의 좋아요

Fabrice, 몇몇 사이트에서 테스트해 봤는데 크롤링 동작이 훨씬 합리적으로 보입니다.

이 PR이 병합되면 기본 스로틀링이 제거됩니다.

12개의 좋아요

저는 이미 제 사이트에서 스로틀링을 비활성화해 두었습니다. 이제 수동 개입 없이 모든 Discourse 포럼에 적용된다고 하니 정말 반갑네요!

1개의 좋아요

방금 가입해서 말씀드리자면, 나와 내 동료는 bingbot이 이 사이트를 올바르게 인덱싱하고 있다는 소식을 듣고 기쁩니다. 이제 문제가 해결되었으니 이 스레드를 잠가두는 것이 가장 좋을 것 같습니다. 이미 해결된 문제에 대해 더 많은 답변을 허용하는 것은 의미가 없으니까요.

7개의 좋아요