Apache, PHP, MySQL을 윈도우나 리눅스에서는 APM 설치로 한다. 맥(Mac)에서는 어떻게 할까? Apache와 PHP는 맥에 기본으로 설치되어 있어 간단한 설정만으로 띄울 수 있다. MySQL은 맥용을 다운로드해서 Package를 실행해서 설치하면 된다. 맥용 MySQL을 설치하면 "시스템 환경설정"에 MySQL 아이콘이 생겨 쉽게 시작하고 중지할 수 있다. 맥용 MySQL을 제거하기 위해서는 MAC에서 MySQL 삭제하기 참고하자. Mac용 Apache 설정 먼저 아파치부터 알아보면, 앞서 이야기한대로 Mac에는 아파치가 기본으로 설치되어 있다. 예전에는 "시스템 환경설정 > 공유"에 들어가면 아래와 같이 "웹 공유"가 있어 쉽게 설정할 수 있었다. 하지만 10.8 버전의 Mountain..
Mac에서 MySQL 설치 후, 삭제하는 방법에 대한 정리입니다. 한번에 삭제하는 명령이 없으니 콘솔에서 아래 명령어를 하나씩 실행하면 됩니다. sudo rm /usr/local/mysql sudo rm -rf /usr/local/mysql* sudo rm -rf /Library/StartupItems/MySQLCOM sudo rm -rf /Library/PreferencePanes/My* rm -rf ~/Library/PreferencePanes/My* sudo rm -rf /Library/Receipts/mysql* sudo rm -rf /Library/Receipts/MySQL* sudo rm -rf /var/db/receipts/com.mysql.* sudo vi /etc/hostconfig ->..
웹앱을 만들다보면, 웹에서 안드로이드 앱의 특정 액티비티를 호출해야 하는 경우가 종종 발생한다. 오늘은 HTML의 링크를 클릭했을 때, 안드로이드 액티비티를 호출하는 간단한 방식을 정리해 보도록 한다. 웹뷰를 작성하는 코드는 안드로이드 웹뷰(WebView) 사용하기 를 참고하기 바란다. 이 소스에 HTML 링크를 처리하는 부분을 추가할 것이기 때문이다. 웹에서 액티비티 호출 방식 웹에서는 HTML의 태그를 활용해서 액티비티를 호출한다. Call Activity 이런 형태로 호출하고, 안드로이드 액티비티에서 URL 로딩하는 부분에서 app://로 시작하는 것을 별도로 처리하면 된다. 필요에 따라서 app:// 이후 문자열을 가지고 특정 파라미터를 전달하는 형태도 가능할 것이다. 웹 HTML 소스 간단한 테..
최근 모바일 웹을 앱으로 씌워서 서비스하는 경우가 많아짐에 따라 웹뷰의 활용성도 올라가는 것 같다. 안드로이드에서 웹뷰(WebView)를 사용하는 기본 방식을 정리해 보도록 한다. 액티비티 생성 먼저 "File > New > Activity > Blank Activity"를 통해 MiniWebActivity라는 이름의 빈 액티비티를 하나 생성한다. 생성후 살펴보면 Java에는 MiniWebActivity 파일이 Layout에는 activity_mini_web.xml 파일이 추가된다. Menu에도 menu_mini_web.xml이 생성되지만 여기에서는 사용하지 않는다. 레이아웃 설정 activity_mini_web.xml의 레이아웃 설정은 다음과 같다. LinearLayout으로 설정했고 방향(orient..
안드로이드 스튜디오 설치 구글에서 안드로이드 스튜디오를 오픈한지도 꽤 되었네요. 앞으로 이클립스의 안드로이드 앱 개발툴의 지원이 점차 줄어들 것으로 예상되므로 서서히 개발 툴을 옮겨보는 것도 괜찮을 듯 합니다. 안드로이드 스튜디오는 IntelliJ 기반으로 기존 이클립스에 ADT, SDK를 설치하던 복잡한 과정을 줄일 수 있고, 안정성이나 성능 면에서도 더 뛰어나다고 합니다. 안드로이드 사이트에서 윈도우나 맥용으로 다운로드 할 수 있습니다. 안드로이드 스튜디오 다운로드 맥에서 설치시 sys-img-x86-addon-google_apis-google-22 오류 해결 맥에서 안드로이드 스튜디오를 다운로드해서 설치하다보면 다음과 같은 오류가 나옵니다. The following SDK components wer..
IOPS는 단위 시간(1초) 동안 디스크로부터 Input/Output을 수행한 수치를 의미한다. 즉, 초당 입출력 횟수라 볼 수 있다. 기본적으로 HDD, SSD, SAN 같은 컴퓨터 저장장치를 벤치마크 하는 데 사용하는 성능 측정 단위이기도 하다. IOPS는 Iometer, IOzone, FIO 등 응용프로그램으로 측정할 수 있다고 한다. IOPS를 구할 수 있는 기본 수식은 다음과 같다. IOPS = 1000 / (Average Read Seek Time + (Maximum Rotational Latency / 2)) 디스크를 읽고 쓰기 위해서 "탐색 시간 + 회전 대기 시간"이 필요하다. 이런 평균 탐색 시간을 구하고, 회전 대기 시간은 최대 값을 구해서 2로 나누는 방식으로 평균 회전 대기시간을 ..
IE 9의 개발자 도구(F12) 이슈 웹 개발에서 브라우저 호환성은 중요한 이슈다. 특히, 인터넷 익스플로러(IE)는 웹 표준에 대한 이슈가 꾸준히 제기되고 있다. 최근 프로젝트를 진행하면서, IE9 브라우저 사용자가 특정 메뉴에 접속할 때, 화면이 나타나지 않는 경우가 있었다. HTML 소스를 다른 페이지의 HTML과 비교해도 차이는 없었다. 한가지 특이한 사항은, 디버깅하려고 개발자 도구에 접속면 페이지가 정상적으로 나온다는 점이었다. 분명 개발자 도구와 관련이 있는 것이라고 판단했다. 문제의 원인은 바로 console.log() 함수였다. IE9 브라우저에서 console.log()를 인식하지 못해, 자바스크립트 오류가 발생한 것이다. 예전에는, 자바스크립트 디버깅을 위해 alert() 함수를 주로..
인터넷 광고와 관련된 용어들이 CPM, CPC 등 약자로 되어 있죠.. 이번 기회에 전체적으로 정리해 보려고 한다. CTR (Click Through Rate) 인터넷 광고는 노출을 기반으로 클릭해서 해당 웹 페이지나 모바일 앱 다운로드로 이동하는 것이다. 그러므로 노출 대비 클릭이 얼마나 일어나는지를 측정할 필요가 있는데 이를 CTR이라고 한다. CTR = (광고 클릭수 / 광고 노출수) x 100 CPM (Cost per Thousand Impressions) 광고를 1,000회 노출할 때 들어가는 광고비용을 의미한다. 흔히 노출 광고라는 것이 이에 해당하며 주로 포탈 메인등에 집행되는 광고다. CPM = (광고 비용 / 광고 노출수) x 1000 CPC (Cost per Click) 광고 클릭당 광..
뭔가 어설프게 알고 있다는 것이 찜찜할 때가 많다. 자주 사용하지 않다보니 대략 알고 있다가 필요할 때마다 또 찾아보고 넘어가는 것 같다. 그래서 RAID의 종류와 특징에 대해서 간략하게 정리해 놓으려고 한다. RAID란 RAID는 Redundant Array of Inexpensive Disks의 약자로 디스크를 병렬로 연결하여 사용하는 기법으로 각 레벨에 따라 신뢰성을 높이거나 속도를 향상하기 위해 사용한다. RAID를 이해하기 위해 "스트라이핑(Striping)"과 "미러링(Mirring)"에 대해서 먼저 알고 있어야 한다. 스트라이핑은 논리적으로 연속된 데이터 세그먼트들이 물리적으로 여러 개의 디스크 드라이브에 라운드로빈 방식으로 나누어 저장하는 것이다. 쉼게 말해 데이터를 여러 개의 디스크에 일..
웹과 인터넷 환경에서 검색은 가장 중요한 플랫폼이었다. 실제로 한 시대를 풍미했던 최고의 인터넷 기업들은 모두 훌륭한 검색 엔진을 보유하고 있었다. 알타비스타, 야후, 그리고 구글까지 당시 최고의 기술로 검색 서비스를 제공했다. 국내에서도 한미르, 엠파스, 심마니, 네이트, 다음, 네이버 등이 있었다. 하지만 최근 모바일 환경의 트래픽이 점차 늘어남에 따라 웹 검색 뿐만 아니라 모바일 검색에 대한 관심도 높아지고 있다. 물론 모바일 웹은 기존의 웹 검색엔진을 그대로 활용할 수 있지만 문제는 바로 모바일 앱(어플리케이션)이다. 모바일 앱 내부의 자체 검색은 할 수 있지만 여러 모바일 앱 컨텐츠를 외부의 검색으로 활용하기 어렵다는 문제를 가지고 있다. 실제로 모바일 앱 검색 서비스를 제공하던 퀵시(Quixe..