본문 바로가기

프로그램 (PHP,Python)179

유닉스를 능숙하게 사용하기: 고급 셸 스크립트 기법 한번 더 셸 스크립트를 제대로 느껴보자 유닉스에는 길고 따분한 작업을 단순하게 만들기 위해 작업을 자동화하는 셸 스크립트가 있습니다. 이 기사는 셸 스크립트를 좀 더 제대로 배우기를 원하며 고급 스크립트를 작성하는 방법이 궁금한 독자들에게 팁을 제공합니다. 다른 유닉스 운영체제나 리눅스와 마찬가지로 IBM AIX 운영체제는 시스템 관리자, 개발자, 사용자가 일상 업무를 처리하고 고객 비즈니스를 단순하게 만들기 위한 여러 가지 강력한 도구를 제공한다. 유닉스에는 길고 따분한 작업을 단순하게 만들기 위해 작업을 자동화하는 셸 스크립트가 있다. 몇 년 동안 유닉스에서 셸 스크립트를 끼적거려 본 경험이 있을지라도 주로 운영체제 안팎을 파느라고 스크립트를 마스터하지는 못했을 것이다. 이 기사는 셸 스크립트를 좀 .. 2009. 2. 17.
DTrace 를 이용한 Ajax/자바 어플리케이션의 완벽한 추적 Amit Hurvitz, 2007년 7월 Ajax 와 DTrace 가 만나는 곳 Ajax 는 새롭게 급부상 하고 있는 신기술로 Google Map 같은 어플리케이션의 등장에 의해 크게 탄력을 받고 있습니다. Ajax 는 브라우저와 서버 간의 코드 수준의 상호작용을 높임으로써 Google Map 같은 웹 어플리케이션을 좀 더 상호작용적으로 만들어 줍니다. 서버와의 대단위 통신은 퍼포먼스 이슈를 이해 하기 어렵게 만들 수 있습니다. 종종 여러분은 호출 흐름을 이해하고 자바스크립트와 서버 메소드(아마도 자바로 쓰여진) 에서 소비되는 시간을 확인할 필요가 있습니다. 이러한 경우 DTrace 가 도움을 줄 수 있습니다. DTrace 는 솔라리스 (10 혹은 그 이상)에서 스크립팅 능력을 가진 추적 설비로 시스템과.. 2009. 2. 17.
AlexaSiteThumbnail Web Services class alexa extends webservices { public function thumbnail() { $query = $this->parameters['url']; // full url $domain = 'http://' . parse_url($query,PHP_URL_HOST) . '/'; // just the main domain page $urls = array($query,$domain); $access_key_id = $this->setting_variable('apikey.amazon.access_key_id'); $private_key = $this->setting_variable('apikey.amazon.secret_access_key'); .. 2009. 2. 11.
플래쉬-액션스크립트 서버와 데이터 통신 (XMLConnector) 플래시에서 서버와 데이터 통신에 사용되는 클래스로, 데이터 로드가 성공적으로 수행되었는지를 확인하고 다운로드 진행상황을 모니터링 할 수 잇는 클래스 입니다. 또한 객체에 있는 모든 변수를 지정된 URL(서버사이드 프로그램)로 전송할 수 있고, 지정된 URL에 있는 모든 변수를 객체에 로드할 수 있습니다. 속성 contentType : String LoadVars.send() 메서드 또는 LoadVars.sendAndLoad()메서드를 호출할 때 서버에 전송되는 MINE유형(데이터의 기본 내용 형식)입니다. 기본값은 application/x-www-form-urlencoded입니다. loaded : Boolean load 또는 sendAndLoad작업이 완료 되었는지 여부를 나타내는 부울값으로, 기본값은 .. 2009. 1. 30.
쓰레드(Thread)간의 동기화(Synchronization) 멀티 태스킹을 말할때 피할수 없는것이 동기화(Synchronization)문제이다. 동기화란 멀티 태스킹 환경에서 여러개의 처리(태스크)를 서로의 진행상태에 맞추어 진행시키는것을 말한다. 문제점 코드 (플래그를 사용한 배타적 제어 코드) bool InUse = false; int func(void) { .... while(InUse) { } InUse = true; // 다른곳에서 접근 금지 File * fp = fopen("sample.dat", "wb"); if(fp != NULL) { ...... fclose(fp); } InUse = false; // 다른곳에서 접근 허용 } 이 코드의 문제점은 첫째, InUse가 false인것을 확인하는 조작가 true로 조작 하는 사이에 비록 짧지만 시간간격이.. 2009. 1. 30.