[TIL] HTTP : The Definitive Guide "p228 ~ p229"

시윤·2025년 2월 26일
1

[TIL] Two Pages Per Day

목록 보기
94/107
post-thumbnail

Chapter 9. Web Robots

(해석 또는 이해가 잘못된 부분이 있다면 댓글로 편하게 알려주세요.)


✏️ 원문 번역


Misbehaving Robots

There are many ways that wayward robots can cause mayhem. Here are a few mistakes robots can make, and the impact of their misdeeds:

  • 잘못된 로봇은 여러 방식으로 혼란을 야기하 수 있습니다.

  • 로봇이 범할 수 있는 몇 가지 실수와 영향은 다음과 같습니다.

Runaway robots

Robots issue HTTP requests much faster than human web surfers, and they commonly run on fast computers with fast network links. If a robot contains a programming logic error, or gets caught in a cycle, it can throw intense load against a web server—quite possibly enough to overload the server and deny service to anyone else. All robot authors must take extreme care to design in safe-guards to protect against runaway robots.

Runaway robots

  • 로봇은 웹 서핑을 하는 사람보다 훨씬 빠른 속도로 HTTP 요청을 발행합니다.

  • 그들은 일반적으로 빠른 컴퓨터와 빠른 네트워크 연결을 통해 동작합니다.

  • 프로그래밍 로직 에러가 있거나 사이클에 갇힌 로봇은 웹 서버에 상당한 부하를 가할 수 있습니다.

  • 이는 서버가 과부하되거나 다른 사용자의 서비스가 중단될 만큼 강력한 영향입니다.

  • 모든 로봇 개발자는 로봇의 폭주를 방지하기 위해 안전장치를 설계할 때 각별한 노력을 기울여야 합니다.

Stale URLs

Some robots visit lists of URLs. These lists can be old. If a web site makes a big change in its content, robots may request large numbers of nonexistent URLs. This annoys some web site administrators, who don’t like their error logs filling with access requests for nonexistent documents and don’t like having their web server capacity reduced by the overhead of serving error pages.

Stale URLs

  • 어떤 로봇은 URL의 리스트를 방문합니다.

  • 리스트는 오래되었을지도 모릅니다.

  • 만약 콘텐츠가 크게 변화한 웹 사이트가 있다면 로봇은 존재하지 않는 수많은 URL에 요청을 전송할 것입니다.

  • 웹 사이트 관리자들을 꽤나 성가시게 만드는 일입니다.

  • 그들은 에러 로그가 존재하지 않는 문서에 대한 접근 요청으로 채워지는 것도, 에러 페이지를 제공하는 오버헤드로 인해 서버의 성능이 저하되는 것도 원하지 않습니다.

Long, wrong URLs

As a result of cycles and programming errors, robots may request large, non-sense URLs from web sites. If the URL is long enough, it may reduce the performance of the web server, clutter the web server access logs, and even cause fragile web servers to crash.

Long, wrong URLs

  • 사이클과 프로그래밍 에러의 결과로 로봇은 웹 사이트로부터 많은 잘못된 URL에 요청을 전송할 수 있습니다.

  • 길이가 긴 URL은 웹 서버의 성능을 저하시키며, 웹 서버 접근 로그를 복잡하게 만들고, 취약한 웹 서버가 다운되게 만듭니다.

Nosy robots

Some robots may get URLs that point to private data and make that data easily accessible through Internet search engines and other applications. If the owner of the data didn’t actively advertise the web pages, she may view the robotic publishing as a nuisance at best and an invasion of privacy at worst.

Usually this happens because a hyperlink to the “private” content that the robot followed already exists (i.e., the content isn’t as secret as the owner thought it was, or the owner forgot to remove a preexisting hyperlink). Occasionally it happens when a robot is very zealous in trying to scavenge the documents on a site, perhaps by fetching the contents of a directory, even if no explicit hyperlink exists.

Robot implementors retrieving large amounts of data from the Web should be aware that their robots are likely to retrieve sensitive data at some point—data that the site implementor never intended to be accessible over the Internet. This sensitive data can include password files or even credit card information. Clearly, a mechanism to disregard content once this is pointed out (and remove it from any search index or archive) is important. Malicious search engine and archive users have been known to exploit the abilities of large-scale web crawlers to find content—some search engines, such as Google,† actually archive representations of the pages they have crawled, so even if content is removed, it can still be found and accessed for some time.

Nosy Robots

  • 일부 로봇은 사적인 데이터를 가리키는 URL을 불러와 인터넷 검색 엔진이나 다른 응용 프로그램을 통한 접근성을 높일 수도 있습니다.

  • 데이터의 소유자가 웹 페이지를 활발히 홍보하지 않는 한 로봇의 이러한 행위를 귀찮아 할 수 있습니다. 최악의 경우에는 사생활 침해로까지 여길지도 모릅니다.

  • 대체로 로봇이 접근할 수 있는 "비공개" 콘텐츠의 하이퍼링크가 이미 존재하기 때문에 발생하는 일입니다.

  • 소유자가 생각한 만큼 콘텐츠가 보호되어 있지 않거나 기존의 하이퍼링크를 까먹고 삭제하지 않은 경우가 많습니다.

  • 때로는 열정적인 로봇이 사이트에 있는 모든 문서를 탐색하는 경우도 있습니다.

  • 명시적인 하이퍼링크가 존재하지 않더라도 디렉토리의 콘텐츠를 불러오는 것입니다.

  • 웹에서 많은 양의 데이터를 취하는 로봇 구현자들은 그들의 로봇이 특정 지점에서 민감한 정보를 수집할 가능성이 있다는 점을 알고 있어야 합니다. 그 데이터를 인터넷상에서 접근하기를 의도하지 않았더라도 인지해야 합니다.

  • 민감한 데이터에는 패스워드 파일이나 신용 카드 정보 등이 포함됩니다.

  • 따라서 지적받은 콘텐츠를 무시하고 검색 인덱스나 아카이브에서 삭제하는 매커니즘이 매우 중요합니다.

  • 악의적인 검색 엔진과 아카이브 사용자들은 콘텐츠를 찾기 위해 대규모의 웹 크롤러 기능을 악용하는 것으로 알려져 있습니다.

  • 실제로 구글과 같은 일부 검색 엔진은 크롤링한 페이지의 Representation을 저장하고 있습니다.
    ** Representation : 콘텐츠, 구조, 디자인, 메타데이터 등을 특정 시점에 저장한 스냅샷의 형태

  • 콘텐츠가 삭제되더라도 여전히 콘텐츠를 찾아서 접근할 수 있다는 뜻입니다.

Dynamic gateway access

Robots don’t always know what they are accessing. A robot may fetch a URL whose content comes from a gateway application. In this case, the data obtained may be special-purpose and may be expensive to compute. Many website administrators don’t like naïve robots requesting documents that come from gateways.

Dynamic gateway access

  • 로봇은 그들이 무엇에 접근하고 있는지 항상 알지 못합니다.

  • 로봇이 콘텐츠가 게이트웨이 응용 프로그램으로부터 전달되는 URL을 수집할 수도 있습니다.

  • 이러한 경우 포함된 데이터에 특정한 목적이 있거나 계산 비용이 높은 것일 수 있습니다.

  • 많은 웹 사이트 관리자들은 게이트웨이로부터 오는 문서를 요청하려 하는 단순한 로봇을 좋아하지 않습니다.


✏️ 요약


Misbehaving Robots

: 로봇이 범할 수 있는 몇 가지 실수와 영향

  • Runaway Robots : 로봇 자체에 로직 에러가 있거나 사이클에 빠져 폭주할 수 있다 -> 웹 서버 과부하
  • Stale URLs : 콘텐츠가 크게 변화한 웹 사이트로 인해 존재하지 않는 수많은 URL에 요청을 전송할 수 있다 -> 복잡한 에러 로그, 에러 페이지 제공에 의한 오버헤드
  • Long, wrong URLs : 잘못되거나 길이간 긴 URL에 요청을 전송할 수 있다 -> 복잡한 에러 로그, 서버 다운 위험
  • Nosy Robots : 고의든 고의가 아니든 민감한 콘텐츠에 접근할 수 있다 -> 콘텐츠가 삭제되더라도 스냅샷이 남아있음 -> 민감한 콘텐츠는 무시하고 검색 인덱스나 아카이브에서 삭제해야 함
  • Dynamic Gateway Access : 게이트웨이 응용 프로그램으로부터 전달되는 URL에 요청을 전송할 수 있다 -> 계산 비용이 높음, 서버 과부하

✏️ 감상


로봇에 대해 딱히 궁금하진 않았지만 알게 돼

내 목적은 http라는 프로토콜에 대해 공부하는 것이었다. 크롤러도 http와 관련이 없다고는 못하겠지만 내용이 옆으로 빠지니 확실히 재미가 없긴 하다. 그렇다고 항상 읽고 싶은 것만 읽을 수도 없는 노릇이고... 꼭 달성하고 싶은 목표가 있다면 하기 싫은 것도 조금 참고 견딜 줄 알아야 하는 거겠지. 언젠가 오늘 배운 내용을 활용할 날이 올지도 모른다.

근데 이거 왜케 기냐 끝나지를 않네

profile
맑은 눈의 다람쥐

0개의 댓글

관련 채용 정보