달력

072010  이전 다음

"This is the wolrd's largest Spring conference" 로드 존슨 키노트에서 흥미로웠던 내용
  • Grails/Groovy
    • 40 분 동안 Twitter 만드는 것이 인상적. 다른 세션(Spring 3.0 세션을 들은 듯)을 듣느라 동료가 들었음.
    • 어떻게 엔터프라이즈 소프트웨어에 맞는 Spring (재사용 컴포넌트와 강력한 설정을 지향)와 Groovy/Grails 습성 (단순함, CoC와 플러그인)이 상호작용할 수 있는가? 확실히 있지만, 과연 두 접근방식에서 배출점 그리고 서로 통합하는 최선안은 무얼까?
    • Grails에서 널리 쓰이는 CoC(convention over configuration)의 한계는?
    • 자바 개발자를 위한 친절한 소개자료가 있는가? Java/Spring/Hibernate 세계에서 Groovy/Grails 세계로 인도할 트랙이 있다면 무척 흥미로울 것이다. 기존 애플리케이션에 GSP 같은 것을 추가하고, groovy Controllers 와 URL 매핑을 기존 Spring Services와 혼용하고 일부 Spring-based Groovy beans 와 GORM을 쓰는 식일까? 프레임워크 전체를 변경하는 것보다 일부만 바꿀 수 있다면 훨씬 좋을 것이다.
  • Spring 3.0 - 나는 REST 지원을 비롯해서 3.0 출시 이후 가지고 놀 수 있는 빛나는 장난감 모두를 다룰 필요가 있다.
    • JDK 1.4 제거라는 것이 Spring API를 의미하는 가? 아니면 설마 내 API까지?
    • Spring Webflow EL(Expression Language)를 잘 쓰는 법?
    • Spring JavaConfig 잘 쓰는 법?
  • RESTful 애플리케이션
    • @Controllers 와 RestTemplate 을 이용한 REST 구현 
    • Validation 등의 MVC 다른 기능 통합
    • 객체 변환에 쓰이는 프레임워크 혹은 포맷?
  • Spring에 맞는 AJAX. 컨퍼런스를 일찍 떠나느라 놓친 세션을 참가자들을 만날 수 있었던 것이 반가웠다.
  • IoC 개선. 애플리케이션 컨텍스트에서 단순한 List, String 이나 primitive 값을 넣고 빼는 것이 복잡하다.
    1. Rod는 @Value("#{some.property}")라는 Spring 3.0 애노테이션을 보여줬다.
    2.  @Resource 처리를 보다 간편하게 할 대안이 필요하다. 새로운 JEE 애노테이션을 기존 JEE 서버에서 사용하기. @Autowired는 List, String 및 및 primitives에는 쓸 수 없다.
    Spring Integration - 좀 더 배울 필요가 있다.

지금까지 흥미로웠던 것:

  • Spring DM과 Jini? 곧 가능하다고 한다.
  • Rod 왈, SpringSource의 올해 OSS에 대한 기여는 작년의 두 배였다고 
  • Spring JavaConfig 코어로
  • 11월에만 Grails has 74,000 다운로드, Groovy는 70,000 ! Guillaume가 알려준 좀 더 상세한 내용
  • WebFlow가 단순해졌고, "어떠한 마법사 형태 애플리케이션에서도 사용이 가능하다." Spring Source는 Spring Web MVC, WebFlow, Spring JS를 통합했다.
  • Rod: "예산에 대한 제약은 복잡도 감소로 발생하는 생산성 강화를 요구할 것이다... Spring 과 Tomcat이 쓰이지 않는 이유는 벤더와 CIO가 골프를 즐기기 때문이다."
    • Rod Johnson 생산성 증명을 위해 Spring Pet Clinic 예제의 코드량 감소(Spring 2.0 에서 애노테이션을 사용한 2.5 로 변경)를 보여줬다. 
    • 기본적으로 Open Source Software는 어려운 시기에도 역할을 잘 해낼 것이다. OSS가 비단 무료라서가 아니라 더 높은 생산성을 제공하기 때문이다.

      내가 궁긍한 것은 새롭고 단순해진 EJB 표준과 Spring's approach 비교다. 공정한 코드량 비교가 하나의 방법이 될 것이다.

  • 벤더로 자리매김한 SpringSource에 대해
    •   내 생각에 Spring TC 는 SpringSource와 Tomcat 을 엄청나게 개선할 것 같다. 나는 이 사실이 무척이나 즐겁다. 바라건데 고객들이 기존 WAS 대신 Spring TC + AMS 선택하는 것을 심각하게 고려해주면 좋겠다.
    • SpringSource은 자사 툴이 경쟁제품보다 났다는 점을 입증해야 한다. 내가 보기엔 스프링 프레임웍을 다른 상업용 툴과 연계하려고 하려고 시도 하는 것처럼 보이는데 - 충분히 말이 된다고 생각한다 - 이는 "스프링 프레임웍이 시장에서 잘 해나가고 있고 그에 따라 스프링 프레임웍 기반의 벤더들 상품도 잘 해나가고 있다" 라는 말의 의미를 희석시킬지도 모른다. 나는 계속해서 지켜볼 생각이다. 하지만 큰 문제가 될 것 같지는 않다.
  • Spring Source TC 서버 - 더 나은 운영 지원과 mission critical support를 추가한  Tomcat. Tomcat의 가장 큰 이슈는 클러스터링과 관리인데 SpringSource가 이를 바꿔가고 있다.
    • 놀라운 일이다. 진심으로 기존 WAS 대치가 일어났으면 한다. WAS가 좀 더 싸고 사용하기 편해져야 한다. J2EE WorkManagers 등이 제공하는 기능 들도 유용하지만, 기존 WAS 최대 장점은 운영(기술)지원팀이다.

* Solomon Duskis의 글을 일부는 Jake님의 도움을 받아 정리함:
Spring One: Random Thoughts and Keynote notes
Posted by 영회
고맙게도 Spring in Practice를 쓰고 있는 Willie Wheeler가 Rod Johnson’s keynote address at SpringOne Americas 2008 라는 글을 올려 리뷰를 정리할 수 있다. :)

사용자 삽입 이미지

SpringSource의 CEO인 Rod Johnson의 첫 번째 keynote는 자사의 태그라인인 ‘Weapons for the War on Java Complexity TM’전략에 기반한 SpringSource의 2008년 성과와 2009년에 대한 전망을 발표하였고, 이를 실현할 주요 기술 현황과 발전 방향에 대해 설명했고, 핵심 기술에 대해서는 데모 시연을 했다. 개략의 내용은 다음과 같이 요약할 수 있다.

-    SpringSource의 2008년 성과
  • Spring Web Flow 2.0 출시(flow가 있는 업무 화면 개발 지원 프레임워크)
  • Spring Batch 출시(Accenture 주도의 대용량 배치 runtime 솔루션)
  • Spring Integration 프로젝트 개시(Message 기반 채널 연계 솔루션)
  • Spring 3.0 개발 (2009년 1/4 분기 출시 예정)
  • SpringSource dm Server 출시(OSGi 기반 차세대 서버 제품)
  • Covalent Technologies 인수(Apache 웹 서버 및 Tomcat 개발 및 기술 지원 업체)
  • G2One 인수(오픈소스 프로젝트Groovy/Grails 개발 및 기술 지원 업체)
  • 상용 제품 출시: SpringSource Tool Suite, SpringSource Application Management Suite, SpringSource Advanced Pack for Oracle.
-    Rod Johnson은 2008년 불어 닥친 세계 경기 악화가 IT 예산에 대한 압박으로 라이선스 비용에 대해서는 보다 엄격해질 것이고, 복잡도에서 유발하는 비용을 줄이기 위한 투자는 늘어날 것으로 전망했다. ‘Weapons for the War on Java Complexity TM’를 태그라인으로 건 SpringSource의 대응책에 대해서는 Spring 관련 오픈소스 및 상용 제품에 대한 소개로 대신했다.

-    복잡도를 줄이겠다는 SprngSource의 전략을 실현한 제품으로 G2One 인수를 통해 Grails 개발속도가 빨라진다는 점과 함께 Spring 3.0의 성과에 대해 소개했다. Spring 3.0의 주요 내용은 다음과 같다.
  • XML 설정에 EL(Expression Language) 지원(XML 설정 가변성 반영)
  • Spring Web MVC 에서 RESTful Web services 지원(SOAP 기반 web services 복잡도 제거)
  • Annotations를 수용하여 Spring Web MVC가 제공하는 Controller 계층을 POJO로 대치하고, XML 설정 필요성 제거(Presentation Layer 코드 량 감소)
  • Flow 제어가 필요한 웹 화면 용도로만 쓰이던 Spring Web Flow 기능 보강으로 ‘back 버튼’, ‘새로 고침’, ‘마법사’, ‘포탈 스타일 UI’ 구현 등의 복잡도 줄임
  • Spring Web MVC를 기반으로 하여 Spring JavaScript, Spring Web Flow와 함께 Spring Faces 등을 통해 웹 개발의 복잡도를 혁신적으로 개선할 것임을 시사

-    10년간 Apache 서버 제품을 개발하고 지원해온 Covalent 인수 이후 SpringSource는 SpringSource dm Server를 출시했고, Rod Johnson의 keynote를 통해 최초로 두 개 제품을 소개했다.
  • tc Sever: Tomcat 서버를 엔터프라이즈 환경의 데이터센터에서 쓸 수 있도록 모니터링, 진달, 관리 기능을 강화한 제품을 내년 1월 중순 출시한다. 리서치 업체 Evans Data의 조사에 따르면 전세계 자바 개발의 70%는 Tomcat 기반으로 이뤄지며, SpringSource 직원들이 지난 2년간 Tomcat 버그 수정의 95%, 기능 추가의 83%를 담당했다고 한다.
  • SpringSource Application Platform Configurator: war 파일, Spring batch 기반 애플리케이션, Grails 애플리케이션에 대해 주요 OS 및 WAS 등에 웹 기반으로 쉽게 배포할 수 있는 도구이며, 프로토타입 시연이 있었지만 출시 계획은 발표하지 않았다.

Posted by 영회
InfoQ에 요약성격의 글이 있어서 나도 따라 정리 좀 해본다. Scott Delap의 글을 앵커로 출발해보자면 모든 것을 포괄하기에는 다소 부족하다.무엇보다 Grails에 대한 감동이 없다는 것이 아쉽다. :) tc 서버에 대해서는 이미 KSUG에 글을 쓴 바 있어 넘어가려다가 eWeek의 보도SpringSource의 기사에서 다음 내용은 눈에 띄어 정리해본다.

우선 tc 서버의 기능 목록이다.
  • Application management
    • List applications running in a distributed collection of server instances
    • Target, deploy and undeploy applications to distributed server instance
    • Start, stop and reload applications running for distributed server instances
    • Control web application parameters like caching, JSP behavior, and serving of static content
  • Server management
    • Remote configuration control for server instances:
    • Configure JDBC Data Sources and connection pools
    • Define virtual hosts, access logs and integration with web servers
    • Configure JVM server start parameters like Java heap size and garbage collection characteristics
    • Define server groups (tc Server or Tomcat instances)
  • Advanced server diagnostics
    • Application thread lock detection provides warnings when threads compete for restricted resources in a way that would compromise application integrity
    • Configurable automatic and on-demand thread and heap dumping for failure and exception analysis
    • Thread to URL association for faster diagnosis when analyzing problems with request processing
  • Enterprise support
    • To minimize downtime, SpringSource provides mission critical enterprise support.
    • More than 400 of the world’s largest organizations count on SpringSource to support their mission-critical tc Server and Tomcat infrastructure.
    • Over 80% of Tomcat commits in the last two years were made by SpringSource employees and with our leading Tomcat committers, SpringSource can rapidly address support incidents and commit bug fixes to Tomcat
1월에 tc Server가 출시되면 각각의 기능(Feature)이 실제로 어떻게 구현되었고, 어떠한 UI나 품질을 갖는지 확인하는데 체크리스트로 쓸만하다.

그리고
Covalent Technologies, founded in 1998, provides services and support for Apache Software Foundation (ASF) projects, namely the Apache Tomcat Application Server, Apache Geronimo Application Server, Apache Axis Web Services Framework, Apache Roller Blog Server, Apache ActiveMQ Message Broker, and Apache HTTP. Covalent CEO Mark Brewer joins the SpringSource management team as vice president and general manager of SpringSource's new Covalent business unit. The financial details of the transaction are not being disclosed by either company.

Posted by 영회

내가 없어도 예약해 둔 포스트가 잘 올라가고 있다. 내가 없어도 블로그가 잘 운영된다. 드디어 마이애미에 와서 스프링 가이들을 만나고 있다. 오늘은, 벌써 어제가 되었군. 어제는 키노트와 파티를 했고, 내일 아침 8시부터 밤 10시까지 강행군이 시작된다. 잠자리에 들기 전에 염장샷 몇 장 남긴다.



사진 설명: 첫 번째 사진은 대부분 알아보겠지만, 스프링의 아버지 로드 존슨이다. 두번째 잘생긴 친구는 유겐 할러. 대부분의 스프링 코드를 만들고 있는 스프링의 어머니 같은 존재고, 마지막 개구쟁이 같은 개발자가 dm Server 개발을 주도하는 롭 해롭이다.
Spring Night Seoul에서 공언한대로 로드 존슨 나이를 물어봤다.

Posted by 영회