Oracle에서 BEA를 인수한 뒤에 Oracle은 BEA의 WAS와 개발 Tool들을 Oracle이라는 브랜드를 붙여서 내놓고 있습니다. 물론 거기에 Oracle DBMS와 연동하기위한 장치들을 기본으로 내장해서요.
 BEA WebLogic, BEA WebLogic Workshop 등의 대표적인 BEA 제품에 이제는 Oracle WebLogic, Oracle Workshop이라는 이름으로 시장에 나왔습니다. Oracle DBMS라는 걸출한 제품과 WebLogic이라는 유명 WAS, 그리고 이제는 Oracle Workshop for WebLogic이라는 이름으로 나온 WebLogic workshop이라는 WebLogic상에서 개발할때 편리한 개발 Tool까지 한 덩이가 되어서... ^^;; 나왔습니다.

사용자 삽입 이미지
위의 이미지를 보시면 알수있듯이 왼쪽위에 있는 빨간색 아이콘... 대문자 O(오)죠. 음... 그러고보니 원래 BEA제품들을 실행시키면 아이콘 모양이 어땠는지 기억이 나질 않네요. ^^;

음... 서론이 길었네요.
사실 이 글의 목적은 OTN에 올라온 문서를 소개하는겁니다.

원문 : Oracle Workshop의 Java EE 5 웹 표준 지원(Oracle Workshop for WebLogic을 이용한 Java EE Web 애플리케이션 개발 방법을 배워 보십시오)


오랫동안, J2EE는 강력하면서 복잡한 기술로 간주되어 왔습니다. 하지만 이를 완벽하게 이해하는 데 충분한 시간을 기울였다면, 확장성이 뛰어난 컴포넌트 기반의 다중 계층(multi tier) 엔터프라이즈 애플리케이션을 개발하는 데 그다지 효과적인 솔루션이 아니라는 사실을 깨달았을 것입니다.

Java EE 5는 이전 J2EE의 위력을 그대로 가지고 있지만 새로운 버전은 이전 버전들에 비해 훨씬 단순하고 사용하기 쉽습니다. 이 글에서는 몇 가지 새로운 Java EE 5 기능에 대해 검토하고 Oracle Workshop (이전의 BEA Workshop)을 이용하여 간단한 웹 애플리케이션을 개발하는 과정을 살펴보겠습니다. 여러분은 웹 프로젝트를 수립하고, JavaServer Faces (JSF) 기반 폼을 작성하며, 페이지 탐색 규칙을 정의하는 것은 물론, 주석을 추가한 session EJB를 생성하고, JSF-Managed Bean 에서 DI(Dependency Injection)를 사용하며 EAR 파일로 애플리케이션을 패키징한 다음, 이를 로컬 또는 원격 Oracle WebLogic 서버로 배치하는 방법을 배우게 될 것입니다.


 지난번에 PS3(PlayStation3)에서 Linux 사용관련 문서를 소개한 적이 있습니다. 페도라 코어 7을 이용하는 문서였죠. 이번에 PS3에서 설치 가능한 최신 SDK에 관한 내용을 설명하고 있습니다.

 PlayStation2 시절부터 리눅스 설치를 지원해왔지만 실제로 사용하기에는 많이 부족했던점을 인식했는지 소니는 PlayStation3에서는 한층더 쓸만하게 만들었습니다. 물론 IBM의 Cell Broadband Engine의 힘 일수도 있지만요. ^^
 요즘 PlayStation3의 보급율이 낮고, PlayStation으로 독점 발매하던 게임들이 멀티 플랫폼을 선언하는 등 게임 시장에 지각변동이 일어나고 있는 시점에 리눅스 지원이 PlayStation3에 얼마만큼 큰 힘이 될지는 모르겠지만, 최소한 리눅스 유저들에게는 좋은 인상을 주고 있지않을까요? 저만 그런건지... ^^;;


원문 : 자그마한 브로드밴드 엔진으로 할 수 있는 작업: PS3에서 직접 설치가 가능한 최신 SDK 검토하기 (PS3에 딱 맞는 SDK를 위해 만들어진 FC7 커널)


멀티 코어 가속 3.0을 위한 기차 여행에 참여해 개발자 관점에서 달라진 사항과 함께 PS3에 직접 설치, FC7과 RHEL 5.1 지원, 강화된 컴파일러, 포트란과 에이다 지원, BLAS, ALF, DaCS를 포함한 SDK 활용법을 살펴봅시다.

소개

IBM 셀 브로드밴드 엔진(IBM Cell Broadband Engine™, Cell/B.E.) SDK가 다시 한번 갱신되었다. 이 기사는 IBM 외부 사람 관점에서 3.0 버전에 들어있는 새롭고 흥미로운 기능을 소개한다. 버전 3.0은 2007년 10월 19일에 나왔으며, 직전 2.1 버전을 완벽하게 대체한다(실제로 버전 2.1을 사용하지 않는다면 신경 쓸 필요가 없다).

직접 설치하기

3.0 판올림은 몇 가지 주요 변경 사항을 보여준다. 아마도 대다수 개발자에게 가장 눈에 들어오는 사항은 설치 프로그램 변경이나 속임수 없이 리눅스(Linux®)를 돌리는 PS3에 직접 설치가 가능해졌다는 사실이다. 2.1이나 초기 버전은 PS3가 사용하는 하이퍼바이저 환경 대신 실제 하드웨어에서 돌아가는 커널을 설치하지 않고서는 셀/B.E. 기반 시스템 설치를 거부했다.

편집자로부터: 다양한 관점
셀 /B.E.는 블레이드 서버에서 하이브리드 슈퍼컴퓨터와 게임 콘솔에 이르기까지 다양한 이질적인 응용 분야에 고개를 내미는 듯이 보인다. IBM 복도를 걷고 있다면, 좀 더 비즈니스에 밀접한 용도와 시스템에 적용하기 위해 셀/B.E. 기술에 초점을 맞추고 있는 수 많은 엔지니어와 디자이너를 만날 수 있다. 여기서 빠진 사람은 (내 친구이자 이 기사 필자인 Peter와 같이) PS3로 장난치기를 원하는 개발자다. 셀/B.E. SDK와 PS3를 대상으로 응용 개발, 이식, 기타 관심이 있는 분야에 노력을 투자한다면 셀/B.E. 프로세서 성장과 발전 방향을 이끄는 중요한 원동력이 될 것이다. 공유를 원하는 경험이나 좋은 생각이 있다면 편집자에게 전자편지를 부탁한다. -- 편집자
물론 셀/B.E. 기반 시스템을 전혀 갖추고 있지 않더라도, 여전히 추가 CD에 포함된 시스템 시뮬레이터 하에서 돌릴 수도 있다. 그럼에도 불구하고 PS3에서 시스템 시뮬레이터를 돌리는 방식을 권장하지 않는다. 성능이 다소 떨어지기 때문이다.














 유닉스나 리눅스 환경에서 작업을 많이 하는 분들을 Shell script를 많이 이용하게 됩니다. Shell script는 업무의 자동화에 유용하죠. 최근에는 MS에서도 자사의 윈도우즈 운영체제에 Power shell이라는 제품을 설치하여 Script를 사용할 수 있도록했죠.

 이번에 소개할 문서는 배시 셸 관련 투토리얼입니다.


원문 : 배시 셸로 작업하기



거의 모든 유닉스(UNIX®) 기반 운영체제에서 활용 가능한 배시 셸에 대한 소개 튜토리얼입니다. 배시는 성숙하고, 강력하고, 그럼에도 불구하고 사용하기 쉬운 셸이며, 자유롭게 구할 수 있습니다. 이 튜토리얼은 다른 인기 있는 유닉스 셸과 다른 점을 파악하기 위해 배시에 대한 간략한 역사를 소개하며, 배시 내부에서 제공하는 주요 기능을 살펴봅니다. 다음으로 유닉스 파일 시스템, 디렉터리와 파일 조작 방법, 배시 외양과 동작 방식을 개인화하기 위한 몇 가지 방법을 설명합니다. 마지막으로 이 튜토리얼은 배시가 제공하는 작업 제어 기능을 소개하며 끝을 맺습니다.

이 튜토리얼 내에서

  • 배시 개괄

  • 배시에서 명령 행 프롬프트로 작업하기

  • 배시에서 파일과 디렉터리 다루기

  • 배시 개인화하기

  • 배시 작업 제어

선수조건

필요한 사전 지식은 없다.


시스템 필요조건

이 튜토리얼을 읽기 위한 시스템 요구 사항은 없다. 단지 글을 읽고 배시를 익히면 된다. 하지만 이 튜토리얼을 최대로 활용하려면 튜토리얼이 제공하는 기법을 시도할 필요가 있다. 이렇게 하려면 버전 2.05 이상인 동작하는 배시 셸이 필요하다. 컴퓨터에 설치된 배시 셸 버전을 모른다면, 배시 셸 홈 페이지를 방문해 필요한 정보를 얻기 바란다.


 Open source의 은덕을 입고 살아온지 거의 10년만에 FSF[각주:1]에 회원가입을 하게 되었네요. 그동안 영어에 대한 막연한 두려움으로 인해서 가입을 미루고 있었는데, 오늘 GCC 컴파일러를 다운받으려고 웹서핑하다가 충동적으로 가입을 하게 되었습니다. ^^;

공식적으로는... "영어 공부도 좀 하려고... 그리고 좀더 다양한 정보를 접하려고 가입을 하게 되었습니다."

회원 가입을 하고보니, badvistainfo-gplv3 메일링 리스트도 받아볼 수 있게 되어있네요. 흠... 우리나라의 커뮤니티 웹 사이트들과는 다른 모양의 웹 사이트라서 조심스럽게 가입을 했는데, 기분은 좋네요. 웬지 좀더 큰 물에 발을 담근듯한...

 아래의 이미지는 회원가입을 완료하면 보이는 계정 설정에 관련된 내용입니다. 여기서 메일링 리스트와 관련된 내용을 수정할 수 있더군요.

사용자 삽입 이미지

 그리고 아래 이미지는 흥미로운 이름의 badvista.org의 첫 화면입니다.
사용자 삽입 이미지

  1. Free Software Foundation. 리차드 스톨만이 이끄는 자유소프트웨어재단입니다. GPL 재정, GNU Software개발 등등 수많은 일을 한 곳이죠. 리누스 토발즈와 함께 오픈소스 진영의 유명인사죠. 성격이 좀 별난 분이라고 하더군요. 너무 카리스마 있으시다는 소문이... [본문으로]
 이 문서는 Ajax 개발시 성능 문제를 개선하기위해서 필요한 도구를 소개하고 있습니다. 제가 사용중인 Firebug도 소개하고 있구요. Yslow라는 도구도 소개하네요.
 갈수록 사용하는 곳이 많아지는 Ajax와 이에따른 성능 문제에 고민하는 개발자라면 한번 읽어볼만한 내용이라고 생각합니다.


원문 : Ajax 성능분석 (최신 도구를 사용하여 작업을 마무리하기)


비동기 자바스크립트 + XML(Asynchronous JavaScript + XML; Ajax) 덕분에 상호작용과 성능에 대한 사용자들의 기대치가 계속 높아지고 있고, Ajax를 웹 응용 프로그램의 필수 요소로 취급하는 개발자들도 점점 늘고 있습니다. 더 많은 코드가 클라이언트 측으로 이동하고 네트워크 모델이 바뀜에 따라, 커뮤니티는 Ajax 고유의 성능 문제들을 다루기 위해 더 많은 도구를 만들어내고 있습니다. Ajax-강화 응용 프로그램에서 성능 문제를 찾아내고 바로잡아주는 도구들에 대해 알아보겠습니다.

성능은 응용 프로그램에 Ajax를 도입해서 개선하려는 일차적인 이유 중 하나다. Ajax는 서버와 통신할 때 전체 페이지를 요청하지 않으므로 응답 시간을 개선할 수 있다. 응답 시간을 줄이면, Ajax는 훨씬 더 나은 사용자 경험을 제공할 수 있다. 그러나 Ajax 응용 프로그램의 성능을 분석하고 향상시키려면 전통적인 웹 응용 프로그램과는 다른 도구가 필요하다. 이 기사에서는 이러한 도구들에 대해 알아보고, 성능 문제를 찾고 고치기 위해 그 도구들을 사용하는 방법을 보여준다.

자주 쓰이는 약어
  • CSS: Cascading Style Sheets
  • HTML: Hypertext Markup Language
  • XML: Extensible Markup Language
  • HTTP: Hypertext Transfer Protocol

Ajax 응용 프로그램 성능은 웹 응용 프로그램의 몇 가지 측면에 근거한다.

  • 서버 응답 시간
  • 네트워크 전송 시간
  • 클라이언트 자바스크립트 처리 시간

전 통적인 웹 응용 프로그램 개발에서는, 서버 응답 시간이 성능 분석의 일차적인 관심사다. 성능 분석은 대부분 신속하게 요청을 처리하고, 필요한 응용 프로그램 로직을 수행하고, 응답을 생성하는 애플리케이션 서버의 능력을 측정한다. 일반적으로 잘 알려진 것처럼, Ajax 응용 프로그램 개발에서도 이러한 능력이 응용 프로그램 성능의 결정적인 측면이지만, 이 기사는 성능의 다른 부분에 초점을 맞출 것이다.




 리눅스에서 파일 관리를 할때 종종 사용하는 명령으로 find가 있습니다.
간단하게 파일 이름으로 검색을 하거나, 파일 크기로 검색을 할때 find를 사용하죠. 이 find 명령에 대한 개요 및 사용 예를 제공하는 OTN[각주:1]의 문서를 소개합니다.

원문 : Linux find 명령어 완전 정복 가이드

 아래는 원문의 앞부분을 발췌한 내용입니다.

가장 강력하면서도 한편으로는 혼란스러운 유비쿼터스 명령어인 find 명령어에 대한 개요.

게시일 : 2008년 7월

Linux find 명령어는 모든 Linux 명령어 가운데 가장 유용하면서도 혼란스러운 명령어 가운데 하나입니다. 다른 Linux 명령어의 표준 구문과 다른 구문을 가지고 있다는 점에서 어렵습니다. 하지만, 파일명, 파일 유형, 사용자, 더 나아가 타임 스탬프 별로 파일을 찾을 수 있다는 점에서 강력한 명령어이기도 합니다. find 명령어를 사용하면 이러한 속성을 자유롭게 조합해 파일의 위치를 찾을 수 있을 뿐만 아니라, 찾은 파일에 대해 연산을 수행할 수 있습니다.

본 글의 목적은 find 명령어와 그 잠재적 이점을 개략적으로 설명함으로써 find 명령어를 손쉽게 학습 및 사용할 수 있도록 돕는 것입니다. 동시에, find 명령어의 특성 중 가장 강력하면서도 한편으로는 혼란스러운 측면에 대한 개요 및 참조를 제공할 것입니다.

[주: 여기에서 사용된 find 명령어는 GNU 버전이기 때문에 일부 세부 내용은 다른 버전의 find 명령어와 다를 수 있습니다.]

  1. Oracle Technology Network [본문으로]
  지난번에 소개한 "PHP 프레임워크, Part 1 많이 사용하는 프레임워크"에 이어서 "Part 2: 간단한 응용 프로그램 만들기"를 소개합니다. 실제로 간단한 응용 프로그램을 만드는 내용이구요. 그다지 자세하진 않습니다.
예전에 소개한 "PHP를 사용하여 인터랙티브한 제작 방식의 위키 만들기" 처럼 자세하다면 좋을텐데... 조금 아쉽긴해도 어느정도 삽질을 해야 자기것으로 만들수 있겠죠. ^^; 이런말하면서도 뭔가 만들어보진 못하고 있습니다. ^^;

 PHP로 만든 웹 메일 서버 관리를 하면서 PHP로 리눅스  메일 서버의 계정 및 조직도 정보를 관리하면서 느낀 거지만, PHP라는게 참 쓸만하다는 겁니다. 쓸만한 프레임워크가 많아져서 더욱더 광범위하게 사용되면 좋겠다는 생각을 해봅니다. 그런 의미에서 이 문서가 많은 분들에게 읽혀지길 바랍니다. ^^


원본 : PHP 프레임워크, Part 2: 간단한 응용 프로그램 만들기(Zend, symfony, CakePHP로 Blahg 구현하기)



이번 "PHP 프레임워크" 연재 기사에서는 널리 쓰이는 PHP 프레임워크 세 개(Zend, symfony, CakePHP)를 살펴봅니다. 각 프레임워크에서 간단한 응용 프로그램을 구현하고 확장하면서 유사성과 차이점을 비교합니다. Part 1에서는 전반적인 기사 범위를 정하고 앞으로 필요한 환경을 설정했습니다. 이번 Part 2에서는 각 프레임워크에서 간단한 응용 프로그램을 작성합니다.

Part 1에 서는 전반적인 기사 범위를 정하고 앞으로 필요한 환경을 설정했다. 이번 Part 2에서는 세 가지 프레임워크에서 각각 간단한 프로그램을 작성한다. 이어질 기사에서는 이번에 작성한 프로그램을 확장하고, 예외 상황을 살펴보고, Ajax를 추가하고, 외부 프로그램과 통합하는 등 다양한 모험이 기다린다.

이번 기사에서는 Blahg라는 예제 응용 프로그램을 세 가지 프레임워크에서 작성한다. 젠드 프레임워크(Zend Framework), 심포니(symfony), CakePHP에서 간단한 응용 프로그램을 구현하는 방식을 처음부터 단계적으로 살펴본다.

Part 1에서 각 프레임워크를 설치하고 기본 환경을 설정했다. 아직 하지 않았다면 지금 끝내기 바란다.

이 연재 기사에서는 독자들이 PHP와 응용 프로그램 설계, 데이터베이스 사용법에 어느 정도 익숙하다고 가정한다. 프레임워크를 사용한 경험은 없어도 좋으나, 배우겠다는 의욕은 필수다.




Tablespace의 크기를 MB 단위로 조회하고, 관련 정보를 조회하는 쿼리입니다.

select
ts.status
, data.name
, ts.contents
, extent_management
, data.Mbytes "SPACE(MB)", free.free "FREE(MB)"
, trunc((data.Mbytes-free.free)/data.Mbytes*100,2) "Used(%)"
from (select tablespace_name name, trunc(sum(bytes/1024/1024)) Mbytes
from dba_data_files
group by tablespace_name) data,
(select free.tablespace_name, trunc(sum(free.bytes)/1024/1024,1) free
from dba_free_space free
group by free.tablespace_name) free,
dba_tablespaces ts
where data.name = free.tablespace_name
and data.name = ts.tablespace_name
;


select
ts.status
, data.file_name
, data.name
, data.Mbytes "SPACE(MB)", free.free "FREE(MB)"
, trunc((data.Mbytes-free.free)/data.Mbytes*100,2) "Used(%)"
from (select tablespace_name name, file_name, file_id, trunc(bytes/1024/1024) Mbytes
from dba_data_files) data,
(select tablespace_name, file_id, trunc(bytes/1024/1024,1) free
from dba_free_space free) free,
dba_tablespaces ts
where data.name = free.tablespace_name
and data.name = ts.tablespace_name
and data.file_id = free.file_id
and data.name not in ('UNDOTBS1', 'SYSTEM')
;

위의 회색 박스안의 쿼리를 실행하면 아래와 같은 결과가 나옵니다.
사용자 삽입 이미지




참고 자료
Littleworld Encylopedia
오라클 정보공유 커뮤니티 oracleclub
 지난번에 소개한 "유닉스 팁: 열 가지 더 좋은 유닉스 습관"과 연관이 있는 "10가지 유닉스 사용습관"을 소개합니다.
이 글은 제목에서 알 수 있듯이 유닉스를 사용하는데 좋은 명령행 사용 습관을 소개합니다. 지난번에 소개한 글과 함께 참고해보시기 바랍니다.

원문 : 유닉스 팁 : 10가지 유닉스 사용습관(한글) (잘못된 유닉스 사용 패턴 고치기)


유닉스® 명령어(Unix Command Line) 조작에 있어서 효율성을 높일 수 있는 10가지 좋은 습관들을 익히고, 그릇된 사용 패턴을 고쳐봅시다. 본 기사는 유닉스 명령어 조작에 있어서 충분히 유용한 것인데도, 간과되는 기술들을 설명합니다. 또한, 본 기사에서 열거한 일반적인 에러 유형과 이를 해결하는 방법을 배우다 보면, 좋은 습관을 들이는 것이 왜 중요한지를 알게 될 것입니다.

머리말

시스템을 사용할 때, 일정한 사용 패턴으로 빠지는 경향이 있고, 가끔은 가장 좋은 방법을 제쳐놓을 때도 있다. 심지어, 좋지 않은 방법을 선택할 때도 있다. 이러한 모순을 타파하는 가장 좋은 방법은 좋은 습관을 의식적으로 익히는 것이다. 이 글에서는, 10 가지 좋은 명령행 사용 습관들을 제안한다. 일반적인 오류를 없앨 수 있는, 효과적인 명령행 작동을 위한 좋은 습관들이다. 이제부터 상세하게 설명하겠다.

 UNIX 혹은 Linux 환경에서 작업을 하시는 분들이라면 VI라는 에디터를 자주 접하실 겁니다. 명령행 환경에서 이만큼 다양한 기능을 제공하는 에디터도 없을거라고 생각합니다.
 물론 FSF의 어떤분은 "VI는 짐승들의 에디터이아"라고 할 정도로 싫어하시는 분들도 있죠. VI파, 이맥스파가 나뉘어있기도 한데, 일단 제가 자주 사용하는 VI...가 아니라 VI와 거의 동일한 기능을 제공하는 VIM이라는 프로그램을 소개하려합니다.

 VIM은 향상된 VI라는 뜻의 "Vi IMproved"의 약자입니다. 저는 이 프로그램을 윈도우 XP에 설치해서 일반적인 개발/관리 업무에도 사용하곤 합니다. 이렇게 하지 않으면 VI 사용법을 잊어버릴것 같다는 두려움도 한 몫했구요. 정규식을 이용한 문자열 치환이라는 강력한 기능도 윈도우에서 VIM을 사용하는 이유중 하나입니다.

www.vim.org에 가시면 윈도우용 VIM을 다운받으실 수 있습니다.



윈도우에 설치하시면 일반적으로 유닉스 명령행 환경에서 사용하던 VIM과 X-Window에서 사용하시던 GUI 버전의 VIM까지 사용하 실 수 있습니다.

C:\> gvim  <= GUI 버전이 실행됩니다.

C:\> vim   <= 명령행 버전이 실행됩니다.

사용자 삽입 이미지

VIM의 GUI버전


사용자 삽입 이미지

VIM의 명령행 버전


+ Recent posts