얼마 전 저희는 노스케일의 아담한 본사 건너편 마운틴뷰 카스트로 거리에 있는 스시 가게에서 점심을 먹으러 갔습니다. 가는 길에 일본 로바타야키에 대해 이야기를 나누던 중 Dave가 로봇이라는 회사에서 일하는 일본 애니메이터의 오스카상 연설에 대한 이야기를 들려주었습니다.
"핑크"의 날을 묘사하는 등 본사에 대한 다른 이야기들이 많지만... 이 글의 목적은 그게 아닙니다.... 점심 식사 중 Dustin멤캐시드 1.4.0이 출시된 직후 Dave, Steve와 저는 사람들이 사용할 수 있도록 멤캐시드가 번들로 포함된 AMI를 만들어야 한다고 말했습니다. 다음에서 얻을 수 있는 것에서 어떤 식으로든 수정되기를 원하지 않았습니다. memcached.org.... 멤캐시드 작업을 하고 사용하는 몇몇 사람들이 만들었을 것입니다. 간단히 부팅하고 시스템에서 사용 가능한 메모리를 최대한 많이 사용하여 멋진 대용량 멤캐시드 인스턴스를 실행하도록 설계되었습니다. 저희는 많은 개발자들을 알고 있으며, 그 중 일부는 EC2 인스턴스를 사용해 멤캐시를 실행한다는 것을 알고 있습니다. 우리는 단지 더 쉽게 구할 수 있도록 만들 것입니다. 그런 다음, 저는 입을 열고 더 나은 AMI를 만들 수 있다고 말했고, 제가 작업했던 기술 중 일부를 사용해 Sun 웹 스택 EC2 배포를 더욱 간소화하기 위해.... 그렇게 미스터로보토가 시작되었습니다. 위에서 말했듯이, 우리는 많은 개발자들을 알고 있기 때문에 그들이 memcached를 어떻게 사용하는지 잘 알고 있습니다. 멤캐시드를 처음 시작하는 사람들은 "-vvv"로 터미널에서 실행하는 경향이 있습니다. 그 정도의 장황함은 실제로는 멤캐시드 개발자가 좋아할 만한 기능입니다. Rails, PHP 또는 Java를 사용하는 일반 개발자에게는 다소 무리일 수 있습니다. 스타트업에서 아이디어를 이야기하면 소프트웨어 개발 프로젝트를 실행할 수 있습니다! 이 프로젝트의 컨셉은 사용자가 요청할 때 해당 스크립트를 실행하도록 수정된 Dustin의 슬러시 서버와 정보를 가져와 사용자에게 보여주는 간단한 AJAX 브라우저 UI를 결합하는 것이었습니다. 설명하기보다는 이 스크린캐스트를 보시기 바랍니다: 노스스케일의 도구를 사용한 멤캐시드 AMI 에서 매트 인젠트론 on Vimeo. 사실상 이것은 브라우저에서 "-vvv"와 같습니다. 첫 번째 릴리스에서는 아주 기본적인 기능이지만, 이제 기반이 마련되었으므로 여기서 몇 가지 확장할 수 있는 부분이 있습니다. 이 간단하지만 유용한 '키 흐름'에서 당장 눈에 띄지는 않지만, 다른 많은 흥미로운 것들을 할 수 있습니다. 이미 몇 가지 다른 실험이 진행되고 있습니다. 트론드 노비와 저를 제외하고는 1년이 넘은 코드임에도 불구하고 DTrace로 멤캐시를 살펴본 사람은 많지 않은 것 같습니다. 여기서 DTrace에 대해 자세히 설명하지는 않겠지만, DTrace를 '무료로' 사용할 수 있는 가장 큰 장점은 프로덕션 환경에서 간단하고 안전하게 사용할 수 있으며 프로브를 사용하지 않는 경우 오버헤드가 전혀 발생하지 않는다는 점입니다. 이것이 바로 이 AMI에서 사용한 방식입니다. 브라우저로 보지 않는다면 오버헤드가 전혀 없습니다. 브라우저를 사용하더라도 오버헤드가 매우 낮고 멤캐시드의 실행 임계 경로에서 벗어납니다. 제 겸손한 의견으로는 DTrace의 기술은 훌륭합니다. 게시된 예제 그리고 사람들이 성장하는 데 도움이 되는 도구를 제공합니다. 슬러시 예제를 제공한 동료 Dustin Sallings, UI를 구체화하는 데 도움을 준 Rod Ebrahimi, 프로젝트의 브레인스토밍과 열정을 보여준 Steve Yen과 Dave Neilsen에게 감사드립니다. 또한 DTrace 프로브를 작성해준 Trond Norbye, 간단한 DTrace-fu 문제를 해결해준 Chad Mynhier와 Adam Leventhal, 그리고 초기에는 리치 맥두걸/김 마우로와 브렌든 그레그(처음에 DTrace 툴킷 이후 Fishworks 분석의 명성을 얻게 된)가 수년간 DTrace의 튜토리얼을 개발했습니다. 앞으로 미스터로보토 프로젝트에 대한 포스팅을 통해 더 많은 소식을 전할 예정이지만, 멋지거나 유용하다고 생각되는 부분이 있거나 향후 미스터로보토 AMI에서 보고 싶은 아이디어가 있다면 알려주세요! 추신AMI는 다음을 기반으로 합니다. OpenSolaris. Amazon의 EC2 관리 콘솔(현재 베타 버전)의 버그로 인해 하위 문자열로 식별할 수 없는 모든 항목에 대해 기본값인 "기타 Linux"로 표시되고 있습니다.