54
Sun GlassFish Message Queue 4.4 업데이트 1 릴리스 노트 부품 번호: 821–1515–10 200912

SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

Sun GlassFish Message Queue4.4업데이트1릴리스노트

부품번호: 821–1515–102009년 12월

Page 2: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

Copyright ©2009 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 U.S.A. 모든권리는저작권자의소유입니다.

Sun Microsystems, Inc.는이문서에설명된제품의기술관련지적재산권을소유합니다.특히이지적재산권에는하나이상의미국특허권또는미국및다른국가에서특허출원중인응용프로그램이포함될수있습니다.

미국정부의권리 –상용소프트웨어.정부사용자는 Sun Microsystems, Inc.표준사용권계약과해당 FAR규정및보충규정을준수해야합니다.

이배포에는타사에서개발한자료가포함되어있을수있습니다.

제품중에는캘리포니아대학에서허가한 Berkeley BSD시스템에서파생된부분이포함되어있을수있습니다. UNIX는미국및다른국가에서X/OpenCompany, Ltd.를통해독점적으로사용권이부여되는등록상표입니다.

Sun, Sun Microsystems, Sun로고, Solaris로고, Java Coffee Cup로고, docs.sun.com, Java및 Solaris는미국및다른국가에서 Sun Microsystems, Inc.또는그자회사의상표또는등록상표입니다.모든상표는사용허가를받았으며미국및다른국가에서의상표또는등록상표입니다 SPARC상표를사용하는제품은 Sun Microsystems, Inc.가개발한구조를기반으로하고있습니다.

OPEN LOOK및 SunTM그래픽사용자인터페이스(GUI)는 Sun Microsystems, Inc.가자사의사용자및정식사용자용으로개발했습니다. Sun은컴퓨터업계를위한시각적또는GUI의개념을연구개발한Xerox사의선구적인노력을높이평가하고있습니다. Sun은Xerox와Xerox그래픽사용자인터페이스(GUI)에대한비독점적사용권을보유하고있습니다.이사용권은OPEN LOOK GUI를구현하는 Sun의정식사용자에게도적용되며그렇지않은경우에는 Sun의서면사용권계약을준수해야합니다.

이설명서에서다루는제품과수록된정보는미국수출관리법에의해규제되며다른국가의수출또는수입관리법의적용을받을수도있습니다.이제품과정보를직간접적으로핵무기,미사일또는생화학무기에사용하거나핵과관련하여해상에서사용하는것은엄격하게금지합니다.거부된사람과특별히지정된국민목록을포함하여미국의수출금지국가또는미국의수출제외목록에나와있는대상으로의수출이나재수출은엄격하게금지됩니다.

설명서는 "있는그대로"제공되며,법률을위반하지않는범위내에서상품성,특정목적에대한적합성또는비침해에대한묵시적인보증을포함하여모든명시적또는묵시적조건,표현및보증을배제합니다.

100220@23474

Page 3: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

목차

1 릴리스노트 ............................................................................................................................................5릴리스노트개정내역 .........................................................................................................................6Message Queue 4.4업데이트 1정보 ..................................................................................................7Message Queue 4.4업데이트 1지원플랫폼및구성요소 ............................................................7운영체제플랫폼지원 .................................................................................................................7시스템가상화지원 ......................................................................................................................8구성요소종속성 ...........................................................................................................................8

Message Queue 4.4업데이트 1및최신릴리스의새로운기능 ................................................ 10Message Queue 4.4업데이트 1의새로운기능 ...................................................................... 10Message Queue 4.4의새로운기능 ........................................................................................... 11Message Queue 4.3의새로운기능 ........................................................................................... 13Message Queue 4.2의새로운기능 ........................................................................................... 18Message Queue 4.1의새로운기능 ........................................................................................... 22Message Queue 4.0의새로운기능 ........................................................................................... 25

향후릴리스에서더이상사용되지않는기능 ............................................................................ 28Message Queue 4.4업데이트 1및최신릴리스에서해결된버그 ............................................ 29

Message Queue 4.4업데이트 1에서해결된버그 ................................................................. 29Message Queue 4.4에서해결된버그 ...................................................................................... 32Message Queue 4.3에서해결된버그 ...................................................................................... 34Message Queue 4.2에서해결된버그 ...................................................................................... 34Message Queue 4.1에서해결된버그 ...................................................................................... 36Message Queue 4.0에서해결된버그 ...................................................................................... 36

Message Queue 4.4업데이트 1설명서업데이트 ......................................................................... 37호환성문제 ................................................................................................................................. 38Message Queue 4.4업데이트 1설명서세트변경사항 ....................................................... 38

알려진문제점및제한사항 ............................................................................................................ 39설치문제 ...................................................................................................................................... 39더이상사용되지않는비밀번호옵션 .................................................................................. 45

3

Page 4: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

관리/구성문제 ........................................................................................................................... 46브로커문제 ................................................................................................................................. 47브로커클러스터 ........................................................................................................................ 49JMX문제 ...................................................................................................................................... 51SOAP지원 .................................................................................................................................... 51

재배포가능파일 ............................................................................................................................... 52내게필요한옵션기능 ...................................................................................................................... 52문제점보고및사용자의견제공방법 ......................................................................................... 52

Sun GlassFish소프트웨어포럼 ............................................................................................... 53Java기술포럼 .............................................................................................................................. 53

사용자의견환영 ............................................................................................................................... 53Sun의추가자원 ................................................................................................................................. 53

목차

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월4

Page 5: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

릴리스노트

버전 4.4업데이트 1

부품번호 821-1515-10

이릴리스노트에는 Sun GlassFish Message Queue 4.4업데이트 1릴리스당시에사용가능한중요한정보가포함되어있습니다.이문서에서는새로추가된기능과향상된기능,알려진제한사항과문제점및기타정보를제공합니다. Message Queue4.4업데이트 1을사용하기전에먼저이문서를읽어보십시오.

이릴리스노트에는Message Queue 4.4, 4.3, 4.2, 4.1및 4.0릴리스에대한정보도포함되어있습니다.예를들어,해당릴리스에소개된기능에대한자세한내용은각각 18페이지“Message Queue 4.2의새로운기능”, 22페이지 “Message Queue 4.1의새로운기능”및25페이지 “Message Queue 4.0의새로운기능”을참조하십시오.

이릴리스노트의최신버전은 Sun GlassFish Message Queue설명서웹사이트http://docs.sun.com/coll/1307.7에서찾아볼수있습니다.소프트웨어를설치및설정하기전과후에도웹사이트를검토하여최신릴리스노트와제품설명서를정기적으로확인하시기바랍니다.

이릴리스노트는다음내용으로구성되어있습니다.

■ 6페이지 “릴리스노트개정내역”■ 7페이지 “Message Queue 4.4업데이트 1정보”■ 7페이지 “Message Queue 4.4업데이트 1지원플랫폼및구성요소 ”■ 10페이지 “Message Queue 4.4업데이트 1및최신릴리스의새로운기능”■ 28페이지 “향후릴리스에서더이상사용되지않는기능”■ 29페이지 “Message Queue 4.4업데이트 1및최신릴리스에서해결된버그”■ 37페이지 “Message Queue 4.4업데이트 1설명서업데이트”■ 39페이지 “알려진문제점및제한사항”■ 52페이지 “재배포가능파일”■ 52페이지 “내게필요한옵션기능”■ 52페이지 “문제점보고및사용자의견제공방법”■ 53페이지 “사용자의견환영”

11 장

5

Page 6: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

■ 53페이지 “Sun의추가자원”

이설명서에서는추가관련정보를제공하기위해타사URL을참조하기도합니다.

Sun은이설명서에언급된타사웹사이트의가용성에대해책임지지않습니다. Sun은이러한사이트나자원을통해사용할수있는내용,광고,제품또는기타자료에대해서는보증하지않으며책임지지않습니다. Sun은해당사이트또는자원을통해사용가능한내용,제품또는서비스의사용과관련해발생하거나발생했다고간주되는손해나손실에대해책임이나의무를지지않습니다.

릴리스노트개정내역다음표에서는Message Queue제품의모든 4.x릴리스날짜를나열하고이문서에서각릴리스와관련된변경사항에대해설명합니다.

표 1–1 개정내역

날짜 변경설명

2009년 12월 Message Queue 4.4업데이트 1에대한이문서의릴리스입니다.이릴리스에관한새로운기능을추가하고이전설치프로그램에적용되는설치문제를제거합니다.

2009년 12월 Message Queue 4.4에대한이문서의 2차릴리스입니다.오류와생략내용을수정합니다.

2009년 10월 Message Queue 4.4에대한이문서의릴리스입니다.이릴리스에대한새로운기능이추가되었습니다.

2009년 5월 Message Queue 4.4 Beta에대한이문서의초기릴리스입니다.이릴리스에대한새로운기능이추가되었습니다.

2008년 12월 Message Queue 4.3에대한이문서의릴리스입니다.이릴리스에대한새로운기능이추가되었습니다.

2008년 8월 Message Queue 4.2에대한이문서의릴리스입니다.이릴리스에대한새로운기능이추가되었습니다.

2007년 9월 Message Queue 4.1에대한이문서의세번째릴리스입니다. Java Enterprise SystemMonitoring Framework지원,수정된C포트,버그수정및기타기능에대한설명이추가되었습니다.

2007년 4월 Message Queue 4.1 Beta에대한이문서의두번째릴리스입니다.고가용성기능이추가되었습니다.

2007년 1월 Message Queue 4.1 Beta에대한이문서의초기릴리스입니다. JAAS지원에대한설명이추가되었습니다.

2006년 5월 Message Queue 4.0에대한이문서의초기릴리스입니다.

릴리스노트개정내역

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월6

Page 7: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

Message Queue 4.4업데이트1정보Sun GlassFish Message Queue는완벽한기능의메시지서비스로 JMS(Java MessagingSpecification) 1.1을따르는안정적인비동기식메시징을제공합니다.또한MessageQueue는 JMS사양을능가하는다양한기능을제공하여대규모엔터프라이즈배포요구를충족시킵니다.

Message Queue 4.4업데이트 1은 pkg(5)시스템이라고도하는플랫폼독립적이미지패키징시스템(IPS)을기반으로새로운설치프로그램을제공하는소규모릴리스입니다.또한버전 4.4업데이트 1에는여러향상된기능과버그수정사항이포함되어있습니다.

Message Queue 4.4업데이트1지원플랫폼및구성요소이절에서는Message Queue 4.4업데이트 1시스템요구사항에대한다음항목을설명합니다.

■ 7페이지 “운영체제플랫폼지원”■ 8페이지 “시스템가상화지원”■ 8페이지 “구성요소종속성”

운영체제플랫폼지원Message Queue 4.4업데이트 1은 Solaris, Linux, Windows및AIX운영체제플랫폼에서지원됩니다.표 1–2에서는이들각각의지원되는플랫폼버전에대해설명합니다.각플랫폼의하드웨어요구사항은 Sun Java System Message Queue 4.3 Installation Guide를참조하십시오.

표 1–2 지원되는플랫폼버전

플랫폼 지원되는버전

Solaris Solaris 9(SunOS 5.9),모든업데이트(SPARC, x86)

Solaris 10(SunOS 5.10),모든업데이트(SPARC, x86, x64)

OpenSolaris OpenSolaris 2008.11(x86, x64)

OpenSolaris 2009.06(x86, x64)

Linux Red Hat Enterprise Linux Advanced Server 4.0, 5.0,모든업데이트, 32및 64비트버전(x86, x64)

Red Hat Enterprise Linux Enterprise Server 4.0, 5.0,모든업데이트, 32및 64비트버전(x86, x64)

AIX AIX 6.1

Message Queue 4.4업데이트 1지원플랫폼및구성요소

1장 • 릴리스노트 7

Page 8: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

표 1–2 지원되는플랫폼버전 (계속)플랫폼 지원되는버전

Windows Windows Vista

Windows XP Professional, SP2( x86)1

Windows Server 2003 Standard및 Enterprise Edition, SP2, 32비트및 64비트버전(x86, x64)2

Windows Server 2008 Standard및 Enterprise Edition, SP2, 32비트및 64비트버전(x86, x64)2

1 Home, Tablet PC또는Media Center Edition지원안됨2 Web또는 Small Business Server Edition지원안됨

시스템가상화지원시스템가상화는여러운영체제(OS)인스턴스를공유하드웨어에서독립적으로실행할수있도록해주는기술입니다.기능적으로,가상화된환경에서호스트된OS에배포된소프트웨어는일반적으로기반플랫폼이가상화되었는지를인식하지못합니다.Sun에서는선별된시스템가상화와OS조합에서 Sun Java System제품을테스트하여 SunJava System제품이적절한규모로적절하게구성된가상화된환경에서가상화되지않은시스템에서처럼계속해서작동하는지를검증합니다.가상화된환경에서의 Sun JavaSystem제품지원에대한자세한내용은 http://docs.sun.com/doc/820-4651을참조하십시오.

구성요소종속성Message Queue는플랫폼별요구사항외에도Message Queue클라이언트를개발및실행하기위해설치해야하는기본구성요소에도종속됩니다.표 1–3에서는이러한구성요소에대해설명합니다.다른버전이나공급업체구현도사용할수있지만 SunMicrosystems에서테스트되지않았으므로공식적으로지원되지는않습니다.

표 1–3 필요한지원구성요소

구성요소 지원 지원되는버전1

Java RuntimeEnvironment(JRE)

Message Queue브로커및관리도구

J2SETM Runtime Environment 1.5.0이상

JavaTM SE Runtime Environment 1.6.0

Java Software DevelopmentKit(JDK), Standard Edition

Java클라이언트개발및배포

J2SE Development Kit 1.5.0이상

JavaSE Development Kit 1.6.0. JMX에는버전1.6.0_10이상이필요합니다.

1 Sun Microsystems제품버전만해당

Message Queue 4.4업데이트 1지원플랫폼및구성요소

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월8

Page 9: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

표 1–4에서는Message Queue클라이언트지원을강화하기위해설치할수있는추가구성요소에대해설명합니다.나열된구성요소가모두필요한것은아닙니다.예를들어, C클라이언트를작성하지않을경우C컴파일러, C++런타임라이브러리, NSPR또는NSS가필요하지않습니다.

표 1–4 선택적지원구성요소

구성요소 지원 지원되는버전

Application Server HTTP/HTTPS Sun GlassFish Application Server EnterpriseEdition,버전 9.1.1

Sun GlassFish Enterprise Server v2.1, v2.1.1, v3

Web Server HTTP/HTTPS Sun GlassFish Web Server Enterprise Edition,버전 7.0, Update 3

데이터베이스 JDBC기반데이터저장소 HADB,버전 4.4.3, 4.5, 4.6

Java DB(Apache Derby),버전 10.4

MySQL Community/Enterprise Edition,버전 5.1

Oracle 9.2i, 10g및 11g

postgreSQL,버전 8.1

주 – PointBase데이터베이스는더이상지원되지않습니다.

고가용성데이터베이스 고가용성브로커클러스터 HADB,버전 4.4.3, 4.5, 4.6

MySQL Cluster Edition,버전 5.1.39–ndb–7.0.9

Oracle 10g및 11g

LDAP(LightweightDirectory AccessProtocol)디렉토리서버

Message Queue사용자저장소및관리대상객체

Sun GlassFish Directory Server,버전 6.0

JNDI(Java Naming andDirectory Interface)

관리대상객체지원및LDAP사용자저장소

JNDI버전 1.2.1

LDAP서비스공급자,버전 1.2.2

파일시스템서비스공급자,버전 1.2 Beta 31

C컴파일러및호환C++런타임라이브러리

Message Queue C클라이언트

Solaris: Sun Studio,버전 12이상,표준모드및C컴파일러가포함된C++컴파일러

Linux: gcc /g++,버전 3.4.6

Windows: Microsoft Windows Visual Studio,버전 2008 SP1

1 관리대상객체지원만가능합니다.즉,개발및테스트용으로는지원되지만작업환경에배포하는경우에는지원되지않습니다.

Message Queue 4.4업데이트 1지원플랫폼및구성요소

1장 • 릴리스노트 9

Page 10: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

표 1–4 선택적지원구성요소 (계속)구성요소 지원 지원되는버전

Netscape PortableRuntime(NSPR)

Message Queue C클라이언트

버전 4.7

NSS(Network SecurityServices)

Message Queue C클라이언트

버전 3.12.3

Message Queue 4.4업데이트1및최신릴리스의새로운기능

Message Queue 4.4업데이트 1및Message Queue 4.x제품군의이전릴리스에포함된새로운기능은다음절에설명되어있습니다.

■ 10페이지 “Message Queue 4.4업데이트 1의새로운기능”■ 11페이지 “Message Queue 4.4의새로운기능”■ 13페이지 “Message Queue 4.3의새로운기능”■ 18페이지 “Message Queue 4.2의새로운기능”■ 22페이지 “Message Queue 4.1의새로운기능”■ 25페이지 “Message Queue 4.0의새로운기능”

Message Queue 4.4업데이트1의새로운기능Message Queue 4.4업데이트 1은다양한기능향상및버그수정이포함된부릴리스입니다.이절에서는이릴리스에포함된새로운기능에대해설명합니다.

■ 10페이지 “새로운설치프로그램”■ 10페이지 “클러스터에대한트랜잭션로그지원”■ 11페이지 “프로세스내브로커”

새로운설치프로그램Message Queue 4.4업데이트 1에서는 IPS또는이미지패키징시스템이라고도하는pkq(5)시스템기반의새로운다중플랫폼설치프로그램을제공합니다.이설치프로그램에대한정보는 Sun GlassFish Message Queue 4.4 Update 1 Installation Guide를참조하십시오.

클러스터에대한트랜잭션로그지원Message Queue 4.4업데이트 1에서는브로커클러스터를지원하는파일기반데이터저장소용트랜잭션영속메커니즘이추가됩니다.이메커니즘은 Sun GlassFish MessageQueue 4.4 Administration Guide의 “Optimizing File-Based Transaction Persistence”에서설명하는다른기능도제공합니다.

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월10

Page 11: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

프로세스내브로커Message Queue 4.4업데이트 1은 Java클라이언트내부로부터의브로커실행을지원합니다.이런브로커를프로세스내또는내장브로커라고하며이를생성및시작한Java클라이언트와동일한 JVM에서실행됩니다.자세한내용은 Sun GlassFish MessageQueue 4.4 Developer’s Guide for Java Clients의 6장, “Embedding a Message Queue Broker ina Java Client”를참조하십시오.

Message Queue 4.4의새로운기능Message Queue 4.4는다양한기능향상및버그수정이포함된부릴리스입니다.이절에서는이릴리스에포함된새로운기능에대해설명합니다.

■ 11페이지 “JMS브리지서비스”■ 12페이지 “STOMP브리지서비스”■ 12페이지 “추가향상된기능”

JMS브리지서비스JMS사양에서는브로커와클라이언트간통신용와이어프로토콜을정의하지않으므로각 JMS공급자(Message Queue포함)는자체의적절한프로토콜을정의하고사용합니다.이로인해 JMS공급자간에는상호운용성이결여되었습니다.

Message Queue 4.4의 JMS브리지서비스는Message Queue브로커에서자체대상을외부JMS공급자의대상에매핑하도록하여이러한격차를극복합니다.이매핑은MessageQueue브로커에서외부 JMS공급자의클라이언트와효과적으로통신할수있도록해줍니다.

JMS브리지서비스에서는다음과같은외부 JMS공급자에서대상매핑을지원합니다.

■ JMS 1.1호환■ JNDI관리대상객체지원■ javax.jms.ConnectionFactory또는 javax.jms.XAConnectionFactory유형의연결팩토리사용

■ 트랜잭션된매핑의경우XA인터페이스를자원관리자로지원

대부분의개방형소스및상용 JMS공급자가이러한요구사항을충족하므로 JMS브리지서비스를통해Message Queue를다른 JMS공급자가사용되는기존메시징환경에효과적으로통합할수있습니다.

JMS브리지서비스에대한자세한내용은다음을참조하십시오.

■ JMS브리지서비스의구조,하위구성요소및기능에대한자세한내용은 SunGlassFish Message Queue 4.4 Technical Overview의 “JMS Bridge Service”를참조하십시오.

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

1장 • 릴리스노트 11

Page 12: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

■ 브로커에서 JMS브리지를구성및관리하는방법에대한자세한내용은 Sun GlassFishMessage Queue 4.4 Administration Guide의 “Configuring and Managing JMS BridgeServices”를참조하십시오.

STOMP브리지서비스앞서언급한대로 JMS사양에서는브로커와클라이언트간통신용와이어프로토콜을정의하지않습니다. STOMP(Streaming Text Oriented Messaging Protocol)개방형소스프로젝트(http://stomp.codehaus.org)에서는임의언어로작성된클라이언트에서STOMP프로토콜을지원하는메시징공급자와통신하는데사용할수있는단순와이어프로토콜을정의합니다.

Message Queue 4.4에서는 STOMP브리지서비스를통해 STOMP프로토콜에대한지원을제공합니다.이서비스를사용하여Message Queue브로커에서 STOMP클라이언트와통신할수있습니다.

STOMP브리지서비스에대한자세한내용은다음을참조하십시오.■ STOMP브리지서비스의구조와기능에대한자세한내용은 Sun GlassFish Message

Queue 4.4 Technical Overview의 “STOMP Bridge Service”를참조하십시오.■ 브로커에서 STOMP브리지를구성및관리하는방법에대한자세한내용은 Sun

GlassFish Message Queue 4.4 Administration Guide의 “Configuring and ManagingSTOMP Bridge Services”를참조하십시오.

추가향상된기능다음과같은추가향상된기능도Message Queue 4.4에서제공됩니다.■ 12페이지 “새UMS(Universal Message Service)기능”■ 13페이지 “IPS패키지지원”■ 13페이지 “감사로그기능부활”

새UMS(Universal Message Service)기능

UMS에서는이제HTTP GET을사용하여다음과같은여러서비스를제공하는기능을제공합니다.■ getBrokerInfo:브로커에대한정보를검색합니다.■ getConfiguration: UMS구성에대한정보를검색합니다.■ debug: UMS서버에서디버그로깅을켜거나끕니다.■ ping:브로커와통신하여실행중인지확인합니다.

이러한새로운기능에대한자세한내용은 https://mq.dev.java.net/4.4-content/

imqums/protocol.html의 “Query and utility functions using HTTP GET”을참조하십시오.

UMS개요에대해서는 13페이지 “Universal Message Service(UMS)”를참조하십시오.UMS API설명서에대해서는 https://mq.dev.java.net/4.4-content/imqums/

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월12

Page 13: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

protocol.html을참조하십시오.여러언어의프로그래밍예에대해서는https://mq.dev.java.net/4.4-content/imqums/examples/README.html을참조하십시오.

IPS패키지지원

Message Queue는이제 pkg(5)시스템으로알려진개방형소스 IPS(Image PackagingSystem)를사용하여배포용으로패키지화되어있습니다. Message Queue를 Sun GlassFishEnterprise Server 2.1.1과통합하기위해이패키지화방법이추가되었습니다.

감사로그기능부활

Message Queue 3.7에서제공하던감사로그기능은Message Queue 4.0에서제거되었습니다.이기능은Message Queue 4.4에서부활되었습니다.이기능에대한자세한내용은 Sun GlassFish Message Queue 4.4 Administration Guide의 “AuditLogging”을참조하십시오.

Message Queue 4.3의새로운기능Message Queue 4.3은다양한향상된기능및버그수정이포함된부릴리스였습니다.이절에서는이릴리스에포함된새로운기능에대해설명합니다.

■ 13페이지 “Universal Message Service(UMS)”■ 16페이지 “AIX플랫폼지원”■ 16페이지 “새로운 Zip기반설치프로그램”■ 17페이지 “확장된플랫폼지원”■ 17페이지 “추가향상된기능”

Universal Message Service(UMS)Message Queue 4.3에는 http지원장치에서Message Queue에대한액세스를제공하는새로운UMS(universal messaging service)및메시징API가도입되었습니다.따라서거의모든응용프로그램이다른응용프로그램과통신할수있으며 JMS메시징의안정성과확실한전달기능을유용하게사용할수있습니다.또한UMS에서는 JMS메시징에대한향상된확장성을제공하므로메시징클라이언트수가인터넷규모비율에도달할수있습니다.

구조

기본UMS구조는다음그림과같습니다.

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

1장 • 릴리스노트 13

Page 14: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

웹서버에서실행되는UMS는언어중립적이며플랫폼독립적입니다. UMS는 JMS가아닌클라이언트응용프로그램과 JMS공급자간게이트웨이로사용됩니다. UMS는UMS API를사용하여보낸메시지를받고,해당메시지를 JMS메시지로변환하여,공급자의기본프로토콜을통해 JMS공급자의대상에생성합니다.마찬가지로 JMS공급자의대상에서메시지를검색하고,해당메시지를텍스트또는 SOAP메시지로변환하여, UMS API를통해클라이언트에서요청된대로메시지를 JMS가아닌클라이언트에보냅니다.

단순하고언어독립적인프로토콜기반UMS API는웹기반및웹기반이아닌응용프로그램을지원하며스크립팅및프로그래밍언어와함께사용될수있습니다. API는REST(Representational State Transfer)스타일프로토콜을사용하는단순메시징API및SOAP메시지헤더에프로토콜을포함하는XML메시징API의두가지스타일로제공됩니다.그러나두경우모두메시지를보내거나받으려면API에단일 http요청이필요합니다.

UMS API의단순성과유연성으로인해AJAX, .NET, Python, C, Java및다른여러응용프로그램에서텍스트메시지및/또는 SOAP(첨부파일포함)메시지를 JMS대상으로보내거나 JMS대상에서메시지를받을수있습니다.예를들어, Python응용프로그램은.NET응용프로그램과통신할수있고, iPhone은 Java응용프로그램과통신할수있습니다.

Message Queue 4.3의경우UMS에서는Message Queue만 JMS공급자로지원합니다.

추가기능

UMS는위에서설명된단순게이트웨이이상으로사용됩니다. UMS는상태있는클라이언트세션과상태없는클라이언트세션을지원합니다.클라이언트에서요청한경우UMS는여러서비스요청에걸쳐클라이언트응용프로그램의세션상태를

C

Java

.Net

Ajax

Message Queue

JMS 2

JMS 3

Python

JMS

JMS

UMSUMS APIJMS

그림 1–1 UMS구조

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월14

Page 15: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

유지합니다. UMS는컨테이너에서관리되는인증을사용하거나Message Queue브로커를통해클라이언트를인증하도록구성하거나두방법을모두사용할수있습니다. UMS는트랜잭션을지원하므로클라이언트응용프로그램이여러서비스요청을단일기본단위로완결하거나롤백할수있습니다.

UMS는Message Queue브로커에대한단일연결에서다수의클라이언트를지원할수있으므로브로커의연결서비스에쉽게로드할수있도록해주어최대확장성을제공합니다.또한수평확장으로UMS용량을늘릴수있어인터넷규모의메시징로드가가능합니다.

클라이언트측에서는프로토콜기반UMS API의단순성으로인해클라이언트라이브러리가필요하지않습니다.따라서나중에API를확장하여클라이언트응용프로그램을업그레이드할필요없이추가 JMS기능을구현할수있습니다.

UMS사용

UMS를사용하려면UMS를서블릿 2.4이상사양을지원하는웹컨테이너에배포하고Message Queue브로커를시작한다음해당대상을생성하고UMS API를사용하여메시지를보내거나받는메시징응용프로그램을작성합니다.

Message Queue 4.3배포에포함된UMS imqums.war파일은플랫폼에따라다음위치에설치됩니다.

.war파일이름을적절하게바꿀수있습니다.

표 1–5 imqums.war파일위치

플랫폼 imqums.war위치

Solaris /usr/share/lib/imq

Linux /opt/sun/mq/share/lib

AIX IMQ_HOME/lib

Windows IMQ_HOME\lib

imqums.war을 localhost:port에있는웹컨테이너에배포한후에는다음위치에서UMS설명서를찾을수있습니다.

http://localhost:port/imqums

그렇지않으면다음과같이UMS설명서를찾을수있습니다.

■ UMS구성에대한자세한내용은 https://mq.dev.java.net/4.3-content/ums/

config.html을참조하십시오.■ UMS API설명서에대해서는 https://mq.dev.java.net/4.3-content/ums/

protocol.html을참조하십시오.

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

1장 • 릴리스노트 15

Page 16: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

■ 여러언어의프로그래밍예에대해서는 https://mq.dev.java.net/4.3-content/ums/

examples/README.html을참조하십시오.

지원되는웹컨테이너

UMS는현재다음웹컨테이너에서지원됩니다.

■ Sun GlassFish Enterprise Server,버전 2.1및버전 3 Prelude■ Tomcat,버전 5.5및 6.0

AIX플랫폼지원Message Queue 4.3에서는AIX플랫폼패키지와패키지설치를위한설치프로그램을제공합니다.

Message Queue AIX구현에서는다음소프트웨어를지원합니다.

■ AIX v 6.1이상(AIX의이전버전은Unix/Java전용번들을통해지원됨)■ DB2지원■ IBM XL C/C++ Compiler V9.0■ JDK 1.5이상

설치지침에대해서는 Sun Java System Message Queue 4.3 Installation Guide의 4장, “AIXInstallation”을참조하십시오.

AIX플랫폼에서Message Queue파일은하나의Message Queue홈디렉토리 IMQ_HOME에설치됩니다. IMQ_HOME은mqInstallHome/mq디렉토리를나타냅니다.여기서mqInstallHome은제품을설치할때지정하는설치홈디렉토리입니다(기본적으로home-directory /MessageQueue).

결과Message Queue디렉토리구조는Windows플랫폼의구조와동일합니다(SunGlassFish Message Queue 4.4 Administration Guide의부록A, “Distribution-SpecificLocations of Message Queue Data”의Windows절참조).

AIX플랫폼에대한Message Queue지원에는Message Queue C-API에대한지원이포함됩니다. AIX플랫폼에서C응용프로그램을빌드및컴파일하는방법에대한자세한내용은XREF를참조하십시오.

새로운Zip기반설치프로그램Message Queue 4.3에는기본패키지배포와반대되는새로운 Zip기반배포용설치프로그램이도입되었습니다.이설치프로그램은AIX플랫폼용새Message Queue .zip배포를설치하는데사용됩니다.

새설치프로그램은Message Queue .zip파일을사용자에게쓰기액세스권한(루트권한이필요하지않음)이있는디렉토리에추출하며이를통해Message Queue설치를Sun Connection에등록할수도있습니다.

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월16

Page 17: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

다운로드번들크기를최소화하기위해 Java런타임이더이상 zip기반배포에포함되지않습니다(대부분의사이트가이미포함하고있음).따라서 installer명령을사용하려면JAVA_HOME환경변수를사용하거나다음과같이명령줄에서 -j옵션을사용하여 JDK또는 JRE를지정해야합니다.

$ installer -j JDK/JRE-path

여기서 JDK/JRE-path는지정된 JDK또는 JRE의경로입니다.

확장된플랫폼지원다음과같은업데이트된플랫폼지원이Message Queue 4.3에대해인증됩니다.

■ Oracle 11g■ Windows Server 2008

추가향상된기능다음과같은추가향상된기능이Message Queue 4.3에포함됩니다.

■ 17페이지 “Windows플랫폼의새디렉토리구조”■ 17페이지 “새브로커등록정보”■ 18페이지 “JMX관리API의향상된기능”■ 18페이지 “와일드카드가입자에대한영구가입나열”

Windows플랫폼의새디렉토리구조Windows플랫폼에서Message Queue의설치디렉토리구조가AIX플랫폼의구조와일치하도록이전버전에서수정되었습니다.하나의컴퓨터에여러설치를용이하게하고, Sun에서호스팅하는서비스로서 Sun하드웨어및소프트웨어를추적,구성및유지관리하는데도움이되는 Sun Connection을통해Message Queue를쉽게자동업데이트할수있도록이디렉토리구조는나중에 Solaris및 Linux플랫폼에서도채택될예정입니다(20페이지 “Sun Connection등록을위한설치프로그램지원”참조).

새브로커등록정보

브로커를구성하는데다음과같은새등록정보를사용할수있습니다.

표 1–6 브로커라우팅및전달등록정보

등록정보 유형 기본값 설명

imq.transaction.producer.maxNumMsgs 정수 1000 생성자가단일트랜잭션에서처리할수있는최대메시지수입니다.자원고갈을방지하려면값을 5000미만으로설정하는것이좋습니다.

imq.transaction.consumer.maxNumMsgs 정수 100 사용자가단일트랜잭션에서처리할수있는최대메시지수입니다.자원고갈을방지하려면값을 1000미만으로설정하는것이좋습니다.

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

1장 • 릴리스노트 17

Page 18: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

표 1–6 브로커라우팅및전달등록정보 (계속)등록정보 유형 기본값 설명

imq.persist.jdbc.connection.limit 정수 5 데이터베이스에대해열수있는최대연결수입니다.

JMX관리API의향상된기능

다음과같이새로운속성및복합데이터키가 JMX API에추가되었습니다.■ 사용자에게전달할다음메시지의 JMS메시지 ID를제공하기위해NextMessageID속성이대상모니터MBean에추가되었습니다.

■ 사용자에게전달할다음메시지의 JMS메시지 ID를제공하기위해복합데이터의NextMessageID키가사용자관리자모니터MBean에추가되었습니다.

■ 사용자에게디스패치된메시지수를제공하기위해복합데이터의NumMsgsPending키가사용자관리자모니터MBean에추가되었습니다.

자세한내용은 Sun GlassFish Message Queue 4.4 Developer’s Guide for JMX Clients의 3장,“Message Queue MBean Reference”를참조하십시오.

와일드카드가입자에대한영구가입나열

영구가입나열명령

list dur [-d topicName]

주제이름지정을선택사항으로설정하도록향상되었습니다.주제를지정하지않는경우명령을실행하면모든주제에대한모든영구가입이나열됩니다(와일드카드이름지정규칙을통한항목포함).

Message Queue 4.2의새로운기능Message Queue 4.2는많은새로운기능과몇가지향상된기능및버그수정이포함된부릴리스였습니다.이절에서는 4.2릴리스의새로운기능과사용가능한추가참조정보에대해설명합니다.

■ 19페이지 “게시자또는가입자를위한여러대상”■ 19페이지 “XML페이로드메시지의스키마검증”■ 19페이지 “분산트랜잭션에대한C-API지원”■ 20페이지 “Sun Connection등록을위한설치프로그램지원”■ 20페이지 “MySQL데이터베이스지원”■ 20페이지 “추가향상된기능”

Message Queue 4.1및 4.0에도입된기능에대한자세한내용은 22페이지 “Message Queue4.1의새로운기능”및 25페이지 “Message Queue 4.0의새로운기능”을각각참조하십시오.

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월18

Page 19: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

게시자또는가입자를위한여러대상Message Queue 4.2에서게시자는여러주제대상에메시지를게시할수있고가입자는여러주제대상에서메시지를사용할수있습니다.여러대상을나타내는와일드카드문자가포함된주제대상이름을사용하여이기능을수행할수있습니다.이러한심볼릭이름을사용하면관리자는필요에따라와일드카드이름지정체계에맞게추가주제대상을만들수있습니다.게시자와가입자는추가된대상에서자동으로메시지를게시하거나사용합니다. (와일드카드주제가입자가게시자보다더일반적입니다.)

주 –대기열대상에는이기능이적용되지않습니다.

심볼릭주제대상이름및예에사용되는형식은 Sun GlassFish Message Queue 4.4Administration Guide의 “Supported Topic Destination Names”에설명되어있습니다.

XML페이로드메시지의스키마검증Message Queue 4.2에도입된이기능을통해브로커로메시지를보낼때XML스키마를기준으로텍스트(객체아님) XML메시지의내용을검증할수있습니다. XML스키마(XSD)의위치는Message Queue대상의등록정보로지정됩니다. XSD위치가지정되지않은경우에는XML문서에있는DTD선언을사용하여DTD검증이수행됩니다. (데이터유형및값범위검증이포함되는XSD검증은DTD검증보다더엄격합니다.)

이기능사용에대한자세한내용은 Sun GlassFish Message Queue 4.4 Developer’s Guidefor Java Clients의 “Schema Validation of XML Payload Messages”를참조하십시오.

분산트랜잭션에대한C-API지원X/Open분산트랜잭션모델에따르면분산트랜잭션에대한지원은하나이상의자원관리자에서수행되는작업을추적및관리하는분산트랜잭션관리자에의해결정됩니다. Message Queue 4.2에서Message Queue C-API는XA호환자원관리자로분산트랜잭션관리자와Message Queue간에XA인터페이스를지원하므로분산트랜잭션처리환경(예: BEA Tuxedo)에서실행되는Message Queue C-API클라이언트는분산트랜잭션에참가할수있습니다.

이분산트랜잭션지원은XA인터페이스사양을구현하는데사용되는다음과같은새로운C-API함수,매개변수및오류코드로구성됩니다.

MQGetXAConnection()

MQCreateXASession()

분산트랜잭션컨텍스트에서C클라이언트응용프로그램을사용할경우MQGetXAConnection()을사용하여연결을설정하고MQCreateXASession()을사용하여메시지를생성및사용하기위한세션을작성해야합니다.모든분산트랜잭션의시작,완결및롤백은분산트랜잭션관리자에서제공되는API를통해관리됩니다.

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

1장 • 릴리스노트 19

Page 20: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

배포된트랜잭션기능사용에대한자세한내용은 Sun GlassFish Message Queue 4.4Developer’s Guide for C Clients의 “Working With Distributed Transactions”을참조하십시오.

Message Queue 4.2는Tuxedo트랜잭션관리자에기반한프로그래밍예를제공합니다.이러한샘플프로그램사용에대한자세한내용은 Sun GlassFish Message Queue 4.4Developer’s Guide for C Clients의 “Distributed Transaction Sample Programs”을참조하십시오.

주 –배포된트랜잭션기능은 Solaris, Linux및Windows플랫폼에서지원되지만이제까지는 Solaris플랫폼에서만인증되었습니다.

Sun Connection등록을위한설치프로그램지원Sun에서호스트되는서비스로서 Sun하드웨어및소프트웨어를추적,구성및유지관리하는데도움이되는 Sun Connection에Message Queue를등록할수있도록MessageQueue설치프로그램이향상되었습니다.

Message Queue설치의일부로Message Queue를 Sun Connection에등록하도록선택할수있습니다.릴리스버전,호스트이름,운영체제,설치날짜및기타기본정보등의설치된Message Queue에대한정보는 Sun Connection데이터베이스로안전하게전송됩니다. SunConnection인벤토리서비스를통해 Sun하드웨어및소프트웨어를구성할수있으며업데이트서비스는사용가능한최신보안수정사항,권장업데이트및기능향상에대해알려줍니다.

Message Queue를 Sun Connection에등록하는방법에대한자세한내용은 Sun Java SystemMessage Queue 4.3 Installation Guide를참조하십시오.

MySQL데이터베이스지원Message Queue 4.2에는 JDBC기반데이터저장소로서MySQL데이터베이스에대한지원이도입되었습니다. MySQL Cluster Edition은독립실행형브로커의 JDBC데이터베이스로사용할수있으며,향상된브로커클러스터에필요한고가용성공유데이터저장소로도사용할수있습니다. MySQL을사용하도록Message Queue를구성하는방법에대한자세한내용은 Sun GlassFish Message Queue 4.4 AdministrationGuide의 “Configuring a JDBC-Based Data Store”및 Sun GlassFish Message Queue 4.4Administration Guide의 “Enhanced Broker Cluster Properties”를참조하십시오.

추가향상된기능위에서설명한기능이외에Message Queue 4.2에는다음과같은향상된기능이포함되었습니다.

■ 원격으로생성된메시지메트릭

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월20

Page 21: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

Message Queue 4.2에는브로커클러스터에서대상을모니터링하는데유용한새로운대상메트릭이도입되었습니다.브로커클러스터에서클러스터에있는지정브로커의지정대상에저장되는메시지는대상에직접생성되는메시지와클러스터에있는원격브로커에서대상으로전달되는메시지로구성됩니다.브로커클러스터에서메시지라우팅및전달을분석할때대상에있는메시지중로컬메시지의수(로컬에서생성됨)와원격메시지의수(원격으로생성됨)를알면유용할때가있습니다.

새로운 2개의물리적대상메트릭수량,즉원격메시지수및원격메시지전체크기가 Message Queue 4.2:에포함되어있습니다.새메트릭수량은 imqcmd list dst및 imqcmd query dst명령(Sun GlassFishMessage Queue 4.4 Administration Guide의 “Viewing Physical Destination Information”참조)및새 JMX속성(Sun GlassFish Message Queue 4.4 Developer’s Guide for JMXClients의 “Destination Monitor”참조)을통해사용할수있습니다.

■ 와일드카드생성자및와일드카드사용자정보

대상이름에서와일드카드문자사용을지원하기위한정보( 19페이지 “게시자또는가입자를위한여러대상”참조)는새모니터링데이터를통해제공됩니다.예를들어,대상에연결된와일드카드생성자또는사용자수는 imqcmd query dst명령(SunGlassFish Message Queue 4.4 Administration Guide의 “Viewing Physical DestinationInformation”참조)및새 JMX속성(Sun GlassFish Message Queue 4.4 Developer’s Guidefor JMX Clients의 “Destination Monitor”참조)을통해사용할수있습니다.또한와일드카드정보는 ConsumerManager Monitor및 ProducerManager Monitor MBean을통해사용할수있습니다.

■ 클라이언트인증용DN사용자이름형식지원

Message Queue 4.2에는 LDAP사용자저장소를기준으로클라이언트연결인증에서DN사용자이름형식에대한지원이도입되었습니다.지원에는다음과같은새브로커등록정보및값이포함됩니다.

imq.user_repository.ldap.usrformat=dn

브로커는이등록정보를사용하여DN사용자이름형식으로부터다음등록정보로지정된속성값을추출하여 LDAP사용자저장소에있는항목을기준으로클라이언트사용자를인증합니다.

imq.user_repository.ldap.uidattr

브로커에서는위의속성값을액세스제어작업의사용자이름으로사용합니다.

예를들어 imq.user_repository.ldap.uidattr=udi와클라이언트인증사용자이름의형식이 udi=mquser,ou=People,dc=red,dc=sun,dc=com인경우액세스제어를수행하기위해 "mquser"가추출됩니다.

■ JAAS인증향상

Message Queue 4.2에는사용자이름외에도 IP주소를사용한 JAAS인증이도입되었습니다.

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

1장 • 릴리스노트 21

Page 22: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

Message Queue 4.1의새로운기능Message Queue 4.1은몇가지새로운기능과향상된기능및버그수정이포함된부릴리스였습니다.이절에서는 4.1릴리스의새로운기능과추가참조정보에대해설명합니다.■ 22페이지 “고가용성브로커클러스터”■ 23페이지 “JAAS지원”■ 23페이지 “영구데이터저장소형식변경사항”■ 23페이지 “브로커환경구성”■ 24페이지 “Java ES Monitoring Framework지원”■ 24페이지 “향상된트랜잭션관리”■ 24페이지 “C클라이언트연결을위한고정포트”

Message Queue 4.0에소개된기능에대한자세한내용은 25페이지 “Message Queue 4.0의새로운기능”을참조하십시오.

고가용성브로커클러스터Message Queue 4.1에는새로운향상된브로커클러스터가도입되었습니다.기존브로커클러스터는메시징서비스가용성만을제공(한브로커가실패하면다른브로커를사용하여메시징서비스제공)하는반면,향상된브로커클러스터는데이터가용성도제공(한브로커가실패하면지속성메시지및상태데이터를다른브로커에서사용하여메시지전달인계)합니다.

Message Queue 4.1에서도입된고가용성구현에서는공유 JDBC기반데이터저장소를사용합니다.자체영구데이터저장소가있는브로커클러스터의각브로커대신에클러스터의모든브로커가동일한 JDBC호환데이터베이스를공유합니다.특정브로커가실패하면실패한브로커의메시지전달이클러스터에있는다른브로커로인계됩니다.그과정에서페일오버브로커는공유데이터저장소에있는데이터와상태정보를사용합니다.실패한브로커의메시징클라이언트는페일오버브로커에다시연결하여중단없이메시징서비스를제공합니다.

Message Queue 4.1고가용성구현에사용되는공유 JDBC기반저장소자체도고가용성이어야합니다.고가용성데이터베이스가없거나중단없는메시지전달이그다지중요하지않은경우에는데이터가용성없이서비스가용성만을제공하는기존클러스터를계속사용할수있습니다.

Message Queue 4.1의향상된브로커클러스터를구성하려면클러스터에있는각브로커에다음브로커등록정보를지정합니다.■ 클러스터구성원등록정보 -브로커가향상된브로커클러스터의일부인지여부,클러스터아이디및클러스터내의브로커아이디를지정합니다.

■ 고가용성데이터베이스등록정보 -지속성데이터모델(JDBC),데이터베이스공급업체이름,공급업체별구성등록정보를지정합니다.

■ 오류감지및페일오버등록정보 -브로커실패를감지하고페일오버브로커를사용하여처리하는방법을지정합니다.

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월22

Page 23: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

향상된브로커클러스터구현을사용하려면다음을수행해야합니다.

1. 고가용성데이터베이스를설치합니다.2. JDBC드라이버 .jar파일을설치합니다.3. 고가용성영구데이터저장소에데이터베이스스키마를만듭니다.4. 클러스터에있는각브로커에고가용성등록정보를설정합니다.5. 클러스터의각브로커를시작합니다.

향상된브로커클러스터에대한개념설명과기존클러스터와의비교에대해서는 SunGlassFish Message Queue 4.4 Technical Overview의 4장, “Broker Clusters”를참조하십시오.향상된브로커클러스터에대한절차및참조정보에대해서는 SunGlassFish Message Queue 4.4 Administration Guide의 10장, “Configuring and ManagingBroker Clusters”및 Sun GlassFish Message Queue 4.4 Administration Guide의 “ClusterConfiguration Properties”를참조하십시오.

Message Queue 4.0으로고가용성데이터베이스를사용하고있다가향상된브로커클러스터로전환하려는경우에는데이터베이스관리자유틸리티(imqdbmgr)를사용하여공유영구데이터저장소로변환할수있습니다.알려진문제점과제한사항에대해서는49페이지 “브로커클러스터”를참조하십시오.

JAAS지원Message Queue 4.1은내장되어있는파일기반및 LDAP기반인증메커니즘외에도브로커에외부인증메커니즘을접속하여Message Queue클라이언트를인증할수있도록해주는 JAAS(Java Authentication and Authorization Service)를지원합니다.

브로커를통해 JAAS호환인증서비스에서사용할수있는정보에대한설명과이런서비스를사용하도록브로커를구성하는방법에대한자세한내용은 Sun GlassFishMessage Queue 4.4 Administration Guide의 “Using JAAS-Based Authentication”을참조하십시오.

영구데이터저장소형식변경사항Message Queue 4.1에서 JDBC기반데이터저장소가향상된브로커클러스터를지원하도록변경되었습니다.이런이유로 JDBC기반데이터저장소의형식이버전410으로업그레이드됩니다.형식버전 350, 370및 400은자동으로 410버전으로마이그레이션됩니다.

파일기반영구데이터저장소형식은변경된사항이없으므로버전 370으로유지됩니다.

브로커환경구성등록정보 IMQ_DEFAULT_EXT_JARS가Message Queue 4.1환경구성파일 imqenv.conf에추가되었습니다.이등록정보를설정하여브로커가시작될때 CLASSPATH에포함될수있도록외부 .jar파일의경로이름을지정할수있습니다.이등록정보를사용하여외부.jar파일의위치를지정하면더이상이파일을 lib/ext디렉토리에복사할필요가없습니다.외부 .jar파일은 JDBC드라이버또는 JAAS로그인모듈과관련된것일수있습니다.다음샘플등록정보에서는 JDBC드라이버의위치를지정합니다.

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

1장 • 릴리스노트 23

Page 24: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

IMQ_DEFAULT_EXT_JARS=/opt/SUNWhadb4/lib/hadbjdbc4.jar:/opt/SUNWjavadb/derby.jar

Java ES Monitoring Framework지원Message Queue 4.1에서는공용그래픽인터페이스를사용하여 Java ES구성요소를모니터링할수있는 Sun Java ES(Java Enterprise System) Monitoring Framework에대한지원이출시되었습니다.이인터페이스는 Sun Java System Monitoring Console이라고하는웹기반의콘솔로구현됩니다.관리자는콘솔을사용하여성능통계를보고,자동으로모니터링할수있는규칙을만들고,경보를확인할수있습니다. MessageQueue를다른 Java ES구성요소와함께실행중인경우에는단일인터페이스를사용하여이러한모든구성요소를관리하는것이편리할수있습니다.

Java ES Monitoring Framework를사용하여Message Queue를모니터링하는방법에대한자세한내용은XREF를참조하십시오.

향상된트랜잭션관리이전에는 PREPARED상태의트랜잭션만관리목적으로롤백할수있었습니다.즉,분산트랜잭션의일부인세션이정상적으로종료되지않은경우트랜잭션이관리자에의해정리되지않은상태로유지되었습니다. Message Queue 4.1에서는명령유틸리티(imqcmd)를사용하여 STARTED, FAILED, INCOMPLETE, COMPLETE및 PREPARED상태에있는트랜잭션을정리(롤백)할수있습니다.

특정트랜잭션을롤백할수있는지여부를결정하는데도움이되도록(특히 PREPARED

상태에있지않을경우)명령유틸리티에서는 imqcmd query txn출력의일부로추가데이터를제공합니다.이데이터는트랜잭션을시작한연결에대한연결 ID를제공하고트랜잭션이생성된시간을지정합니다.관리자는이정보를사용하여트랜잭션을롤백해야하는지여부를결정할수있습니다.일반적으로관리자는트랜잭션을조기에롤백해서는안됩니다.

C클라이언트연결을위한고정포트Message Queue 4.1, C클라이언트는 Java클라이언트와마찬가지로이제브로커의포트매퍼서비스에서동적으로할당된포트대신고정된브로커포트에연결할수있습니다.고정포트연결은방화벽을통과하려고하거나다른이유로포트매퍼서비스를우회해야하는경우에유용합니다.

고정포트연결을구성하려면브로커와C클라이언트런타임모두(연결의양끝모두)를구성해야합니다.예를들어, ssljms를통해클라이언트를포트 1756에연결할경우다음을수행합니다.■ 클라이언트측에서다음등록정보를설정합니다.

MQ_SERVICE_PORT_PROPERTY=1756

MQ_CONNECTION_TYPE_PROPERTY=SSL

■ 브로커측에서 imq.serviceName.protocolType .port등록정보를다음과같이설정합니다.

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월24

Page 25: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

imq.ssljms.tls.port=1756

주 – MQ_SERVICE_PORT_PROPERTY연결등록정보가Message Queue 3.7 Update 2로백포트되었습니다.

Message Queue 4.0의새로운기능Message Queue 4.0은Application Server 9 PE지원으로제한된부릴리스였으며,몇몇새롭고향상된기능및버그수정을포함하고있었습니다이절에서는이릴리스의새로운기능에대해설명합니다.■ 25페이지 “JMX관리API지원”■ 25페이지 “클라이언트런타임로깅”■ 26페이지 “연결이벤트알림API”■ 26페이지 “브로커관리기능향상”■ 27페이지 “JDBC기반데이터저장소정보표시”■ 27페이지 “JDBC공급업체지원”■ 27페이지 “영구데이터저장소형식변경사항”■ 27페이지 “추가메시지등록정보”■ 28페이지 “SSL지원”

주의 –버전 4.0에도입되었던,사소하지만잠재적으로위험할수있는변경사항중의하나는비밀번호를지정하는명령줄옵션이폐지되었다는점입니다.따라서 45페이지“더이상사용되지않는비밀번호옵션”에설명된대로모든비밀번호를파일에저장하거나프롬프트창에입력해야합니다.

JMX관리API지원Message Queue 4.0에는 JMX(Java Management Extensions)사양에따라Message Queue브로커의구성및모니터링을위해새로운API가추가되었습니다.이API를사용하여프로그래밍방식으로 Java응용프로그램내에서브로커기능을구성및모니터링할수있습니다.이전버전의Message Queue에서는명령줄관리유틸리티또는관리콘솔을통해서만이기능에액세스할수있었습니다.

자세한내용은 Sun GlassFish Message Queue 4.4 Developer’s Guide for JMX Clients를참조하십시오.

클라이언트런타임로깅Message Queue 4.0에서는연결및세션관련이벤트의클라이언트런타임로깅지원이도입되었습니다.

클라이언트런타임로깅및구성방법에대한자세한내용은 Java Dev Guide의137페이지를참조하십시오.

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

1장 • 릴리스노트 25

Page 26: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

연결이벤트알림APIMessage Queue 4.0에서는클라이언트런타임에서응용프로그램에연결상태변경사항에대해알릴수있는이벤트알림API가도입되었습니다. Message Queue클라이언트는연결이벤트알림을통해닫힘및다시연결이벤트를수신하고알림유형및연결상태를기반으로적절한작업을수행할수있습니다.예를들어,페일오버가발생하고클라이언트가다른브로커에다시연결된경우응용프로그램은해당트랜잭션상태를정리하고새트랜잭션으로작업을계속하려할수있습니다.

연결이벤트와이벤트수신기를작성하는방법에대한자세한내용은 Java Dev Guide의96페이지를참조하십시오.

브로커관리기능향상Message Queue 4.0에서는관리자가브로커정지,지정된간격후에브로커종료,연결영구삭제또는 Java시스템등록정보설정(예:연결관련등록정보)을수행할수있도록명령유틸리티(imqcmd)에몇가지새로운하위명령과명령옵션이추가되었습니다.

■ 브로커를정지하면브로커가자동상태가되며브로커가종료되거나다시시작되기전에메시지가드레인됩니다.정지되는브로커에는새연결을만들수없습니다.브로커를정지하려면다음명령을입력하십시오.

imqcmd quiesce bkr -b Wolfgang:1756

■ 지정된간격후브로커를종료하려면다음명령을입력하십시오. (시간간격은브로커가종료되기전에대기하는시간(초)을지정합니다.)

imqcmd shutdown bkr -b Hastings:1066 -time 90

시간간격을지정하면브로커에서종료시간을나타내는메시지를기록합니다.예를들면다음과같습니다.

Shutting down the broker in 29 seconds (29996 milliseconds)

브로커종료대기중해당동작은다음과같은방식으로영향을받습니다.■ 관리 jms연결은계속허용됩니다.■ 새 jms연결은허용되지않습니다.■ 기존 jms연결은계속작동합니다.■ 브로커는향상된브로커클러스터내의다른브로커로부터인계받을수없습니다.

■ imqcmd유틸리티는차단되지않고종료요청을브로커에전송하며즉시반환됩니다.

■ 연결을삭제하려면다음명령을입력하십시오.

imqcmd destroy cxn -n 2691475382197166336

연결아이디를가져오려면 imqcmd list cxn또는 imqcmd query cxn명령을사용합니다.

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월26

Page 27: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

■ imqcmd를사용하여시스템등록정보를설정하려면새로운 –D옵션을사용하십시오.이명령은 JMS연결팩토리등록정보또는연결관련 java시스템등록정보를설정하거나대체할때유용합니다.예를들면다음과같습니다.

imqcmd list svc -secure -DimqSSLIsHostTrusted=true

imqcmd list svc -secure -Djavax.net.ssl.trustStore=/tmp/mytruststore

-Djavax.net.ssl.trustStorePassword=mytrustword

imqcmd명령구문에대한자세한내용은 Sun GlassFish Message Queue 4.4 AdministrationGuide의 16장, “Command Line Reference”를참조하십시오.

JDBC기반데이터저장소정보표시Message Queue 4.0에는데이터베이스관리자유틸리티 imqdbmgr에새로운 query하위명령이추가되었습니다.이하위명령을사용하여데이터베이스버전,데이터베이스사용자및데이터베이스테이블이만들어졌는지의여부를비롯한 JDBC기반데이터저장소에대한정보를표시합니다.

다음은이명령을사용하여표시한정보의예를나타냅니다.

imqdbmgr query

[04/Oct/2005:15:30:20 PDT] Using plugged-in persistent store:

version=400

brokerid=Mozart1756

database connection url=jdbc:oracle:thin:@Xhome:1521:mqdb

database user=scott

Running in standalone mode.

Database tables have already been created.

JDBC공급업체지원Message Queue 4.0에서는이제Apache Derby버전 10.1.1이 JDBC기반데이터저장소공급업체로지원됩니다.

영구데이터저장소형식변경사항Message Queue 4.0에서는최적화및향후향상된기능지원을위해 JDBC기반데이터저장소가새로변경되었습니다.이런이유로 JDBC기반데이터저장소의형식이버전400으로업그레이드되었습니다. Message Queue 4.0에서는변경된내용이없기때문에파일기반데이터저장소버전이 370으로남아있습니다.

추가메시지등록정보Message Queue 4.0에서는사용불능메시지대기열에있는모든메시지에설정되는새로운등록정보두개가추가되었습니다.

■ JMS_SUN_DMQ_PRODUCING_BROKER는메시지를생성한브로커를나타냅니다.

Message Queue 4.4업데이트 1및최신릴리스의새로운기능

1장 • 릴리스노트 27

Page 28: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

■ JMS_SUN_DMQ_DEAD_BROKER는메시지를사용불능으로표시한브로커를나타냅니다.

SSL지원Message Queue 4.0시작시클라이언트연결팩토리등록정보 imqSSLIsHostTrusted의기본값은 false입니다.응용프로그램이이전의기본값인 true를따르는경우에는등록정보를다시구성하여명시적으로 true로설정해야합니다.

자체서명된인증서를사용하도록브로커를구성한경우호스트를신뢰하도록선택할수있습니다.이경우 imqConnectionType등록정보를사용하여연결이 SSL기반연결서비스를사용하도록지정해야할뿐아니라 imqSSLIsHostTrusted등록정보를 true로설정해야합니다.

예를들어,브로커가자체서명된인증서를사용할때클라이언트응용프로그램을안전하게실행하려면다음명령을사용합니다.

java -DimqConnectionType=TLS

-DimqSSLIsHostTrusted=true ClientAppName

브로커에서자체서명된인증서를사용할경우명령유틸리티(imqcmd)를안전하게사용하려면커넥터서비스나열시다음과같은명령을사용합니다.

imqcmd list svc -secure -DimqSSLIsHostTrusted=true

향후릴리스에서더이상사용되지않는기능다음기능은향후릴리스에서더이상사용되지않습니다.

■ 메시지기반모니터링

메시지기반모니터링에서는구성가능한브로커메트릭메시지생성자를사용하여JMS메시지에메트릭데이터를기록한다음메시지에포함된메트릭정보의유형에따라메트릭주제대상으로전송합니다.그런다음적절한메트릭주제대상에가입하고해당메시지를사용하며필요에맞게데이터를처리하는클라이언트응용프로그램을작성하여이메트릭정보를액세스할수있습니다.메시지기반모니터링기능은MQ 4.0에도입된 JMX관리API로대체되었습니다(25페이지 “JMX관리API지원”참조). JMX API는보다종합적이며(주제대상에기록되는것보다더많은메트릭데이터포함) JMX업계표준을기반으로합니다.이제Message Queue에서 JMX API를지원하므로메시지기반모니터링을사용할별다른이유는없습니다.메시지기반모니터링에대한정보는기능이공식적으로더이상사용되지않을때까지Message Queue설명서에남아있습니다.

■ 텍스트기반설치프로그램

향후릴리스에서더이상사용되지않는기능

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월28

Page 29: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

Message Queue설치프로그램(installer -t)의텍스트모드는모든운영체제플랫폼에서제거될예정입니다.텍스트모드에서일반텍스트는GUI(그래픽사용자인터페이스)모드의모양을시뮬레이트하기위해터미널창에표시됩니다. GUI모드와자동모드는계속지원됩니다.

■ 플랫폼지원

Windows 2000및Red Hat Linux 3은향후릴리스에서더이상지원되지않습니다.■ JMSRA자원어댑터

일반적으로 JMSRA라고하는Message Queue의자원어댑터 imqjmsra.rar은MessageQueue의향후릴리스에서새자원어댑터로대체될예정입니다. JMSRA는MessageQueue를 Sun Java System Application Server와통합하는데사용됩니다.

JMSRA의기존기능과다른 Sun JMS자원어댑터의기능을결합하는새자원어댑터는 Java EE 5 Application Server환경에서Message Queue및기타공급자에대한특수지원을제공합니다.따라서새자원어댑터는Message Queue를 Sun GlassFishEnterprise Server및 Sun Java CAPS(Java Composite Application Platform Suite)로통합하는데사용됩니다.

Message Queue 4.4업데이트1및최신릴리스에서해결된버그

Message Queue 4.4업데이트 1에는새버그수정이포함되고Message Queue 4.x의이전릴리스에서수정된버그가통합되어있습니다.

다음절에서는각릴리스에서해결된버그를소개합니다

■ 29페이지 “Message Queue 4.4업데이트 1에서해결된버그”■ 32페이지 “Message Queue 4.4에서해결된버그”■ 34페이지 “Message Queue 4.3에서해결된버그”■ 34페이지 “Message Queue 4.2에서해결된버그”■ 36페이지 “Message Queue 4.1에서해결된버그”■ 36페이지 “Message Queue 4.0에서해결된버그”

Message Queue 4.4업데이트1에서해결된버그다음표는Message Queue 4.4업데이트 1에서해결된버그를설명합니다.이중일부는"(OpenMQ)"라고표시되어있습니다.이는해당문제가 Sun GlassFish Message Queue을기반으로하는Open Message Queue오픈소스프로젝트에서해결되었음을나타냅니다.

Message Queue 4.4업데이트 1및최신릴리스에서해결된버그

1장 • 릴리스노트 29

Page 30: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

표 1–7 Message Queue 4.4업데이트 1에서해결된버그

버그 설명

6590909 주소목록을덮어쓸때DIRECT모드MDB가원격브로커에연결하지않음

6616704 한세션안에서다수의소비자가생성된경우브로커메모리증가

6745761 동일한XA TX(JMSJCA사용)에서두연결을사용할때XAResource.isSameRM()이True를반환해야함

6745763 동일한XA TX(JMSRA DIRECT모드)에서두연결을사용할때XAResource.isSameRM()이True를반환해야함

6745768 동일한XA TX(JMSRA LOCAL/REMOTE)에서두연결을사용할때XAResource.isSameRM()이True를반환해야함

6760450 MQ(GF)인스턴스중지없이시스템을재부팅할경우메시지저장소가손상됨

6766241 UMS: SendMsg.html AJAX예제가기본컨텍스트루트로 /ums를사용함. /imqums를사용해야함

6766852 DirectXAResource가브로커CONFLICT상태를 "TxID가이미사용중임"이라고해석함

6799428 DMQ의비영속메시지/비지속예치메시지를사용할수는없으나탐색은가능함

6799428 DMQ의비영속메시지/비지속예치메시지를사용할수는없으나탐색은가능함

6809353 posgtresql(8.1)이있는 openmq 4.3 HA가작동하지않음(imqbrokerd를시작할수없음)

6809750 clientId연결에대한연결풀링(JMSRA로부터)이작동하지않음

6812198 MQ토픽메트릭을사용한모니터링에서클래스캐스트예외발생

6832000 MQ reapExcessConnection JDBC연결에서높은CPU스핀발생

6833109 JDK6이있는AIX에서MQClusterMonitor JMX샘플응용프로그램예외발생

6835420 NoGCDefault기본값이정확하지않게산출되었습니다.메모리가부족할때과도한GC가발생할수있습니다.

6852018 오류메시지 "지속가능소비자{0}을(를)추가할수없습니다.연결에ClientID가설정되지않았습니다."잘못읽힘

6856991 브로커재시작후지속가능소비자 PREPARED트랜잭션을롤백하면NullPointerException발생

6874125 경고: MQJMSRA_DC2001: connectionId=555670328604044289:_destroy():가연결에서호출됨...

6878945 RFE: JMSBridge:는사용자이름/암호를지정하여연결팩토리로부터연결을생성할수있도록함

6881493 HA브로커에대해관리임시대상이저장되지않아야함

Message Queue 4.4업데이트 1및최신릴리스에서해결된버그

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월30

Page 31: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

표 1–7 Message Queue 4.4업데이트 1에서해결된버그 (계속)버그 설명

6881753 RFE JMSBridge:이각메시지를대상으로전송하기전에 jmsbridge이름으로해당메시지를태깅할수있도록함

6884673 MQ 4.4 Broker가MQ 3.7/3.6 Broker와의클러스터연결을설정할수없음

6886390 DMQ로이동한영속/Txn게시메시지는DMQ로부터해당메시지를소비할때'mq.sys.dmq없음'오류를초래할수있음

6886515 JMX를사용하여내장브로커에서대상을삭제할때AccessControlException발생

6890628 브로커속성 "imq.autocreate.destination.isLocalOnly=true"설정이유효하지않음

6891615 glassfish에서브로커 4.3을실행할때선택기가작동하지않는경우가있음

6891624 Msgs 'Remote'가 'imqcmd list dst'의 'Count'보다커짐

6891629 선택기에서산술적예외발생시사용자가이해하기쉬운메시지필요

6891717 ifimq.transaction.autorollback=true,autorollback PREPARED ack가명확하지않아TransactionAckExistEx발생

6891802 "[B4061]:Can not use Transaction ID..currently in use"(트랜잭션 ID를사용할수없음.현재사용중임)가원격 tx ack를인수한후브로커재시작시표시됨

6892512 메모리누출:임시대상이 tempDest.delete()호출시연결에서제거되지않음

6895040 마스터브로커에임시대상이있는경우 uidprefix잠금시간초과후시작할때슬레이브브로커가 uidprefix를가져오지못함

6896230 슬레이브와동기화한후마스터브로커를재시작하는동안마스터브로커에서생성된새소비자가일부에전파되지않을수있음

6896764 TransactionAcknowledgement의 equals메소드가올바르지않음

6898355 인수가완료될때까지대기하지않고브로커를재시작할때클러스터managr init에서인수잠금이재설정됨

6901405 RFE:지정한경우 JDBC벤더정보및벤더속성기록

16(OpenMQ) glassfish에서브로커 4.3을실행할때선택기가작동하지않는경우가있음

17(OpenMQ) posgtresql(8.1)이있는 openmq 4.3 HA가작동하지않음(imqbrokerd를시작할수없음)

22(OpenMQ) 설치프로그램이존재하지않는바이너리를참조하고실패함

25(OpenMQ) TemporaryTopic생성시메모리누출

29(OpenMQ) 브로커분리

30(OpenMQ) Msgs 'Remote'가 'imqcmd list dst'의 'Count'보다커짐

31(OpenMQ) 선택기에서산술적예외가발생한경우사용자가이해하기쉬운메시지필요

Message Queue 4.4업데이트 1및최신릴리스에서해결된버그

1장 • 릴리스노트 31

Page 32: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

표 1–7 Message Queue 4.4업데이트 1에서해결된버그 (계속)버그 설명

32(OpenMQ) int-> long오버플로우해결

33(OpenMQ) ja로케일에서실행시OpenMQ설치프로그램: "Invalid SwiXML Descriptor"오류

Message Queue 4.4에서해결된버그다음표는Message Queue 4.4에서해결된버그를설명합니다.

표 1–8 Message Queue 4.4에서해결된버그

버그 설명

6242247 두브로커가모두동일한이름이사용된시스템에있는경우MQ클러스터에마스터브로커시작및정지

6760937 브로커가다시시작되는경우DB에다시연결되지않음

6763252 브로커가만료/제거된메시지를인식할때NPE가아닌의미있는메시지를기록해야함

6765410 마스터브로커가로컬인터레스트를 2회보내고이로인해영구가입이이미활성화된슬레이브예외가발생함

6796506 원격 PREPARE회신수신시시간초과된경우롤백이후원격 PREPARED메시지가다시전달되지않음

6807708 마스터브로커를실행하지않는경우임시대상삭제에실패함

6812037 RFE: MQMessageListenerFunc가오류를반환할경우 afterMessageDelivery에MQ_CALLBACK_RUNTIME_ERROR전달

6812755 MessageDelivery콜백에서오류를반환할경우양호수준인메시지가경고여야함

6816023 Message.setStringProperty()예외에서부적합한문자예외에속성이름을표시하지않음

6819095 RFE:클러스터가입출력스트림버퍼크기및TcpNoDelay설정을지원해야함

6820585 'imqcmd list txn'이원격브로커완료대기중COMMITTED클러스터트랜잭션을표시하지않음

6820588 로컬및원격메시지를모두소비하는클러스터트랜잭션이대기상태에서COMMITTED로유지됨

6821639 MQRA-DIRECT모드에대한AS복구중 rollback/commitTransaction시NPE발생

6823364 RFE: Solaris에서C-API컴파일러를 Sun Studio 12로업그레이드

6829113 Tuxedo TM롤백에서과도한부하로트랜잭션이시간초과되었을때ConcurrentModificationException발생

Message Queue 4.4업데이트 1및최신릴리스에서해결된버그

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월32

Page 33: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

표 1–8 Message Queue 4.4에서해결된버그 (계속)버그 설명

6832197 비트랜잭션원격 ack에서클라이언트가 ackack를요청하지않는경우원격응답을대기하지않아야함

6834735 START상태에서Tuxedo TM시간초과시의미를알수없는로그메시지 "UnexpectedBroker Interal Error"(예기치않은브로커내부오류)발생

6836364 와일드카드가입자의주제가가입자보다먼저생성된경우해당가입자가원격메시지를수신하지못함

6836691 XA수신기롤백후msg를커밋하면수신에서HA(JCAPS):msg가이미예외를제거함

6836749 HA(JCAPS): durables중하나가메시지를롤백한다음완결한후다시수신시저장소에ack가있는예외발생

6837671 HA(JCAPS):성공적인커밋후XAResourceImpl.rollback을수행할때커밋된메시지를계속하여다시전달함

6839193 RFE: C++컴파일러를Visual Studio 2008 SP1로업그레이드

6845625 원격소비자가반복적으로생성/종료되면브로커가메모리부족상태가됨

6852207 원격브로커에메시지를보내는NPE로인해 read msg pkt에서원격브로커가"메시지를처리할수없게"됨

6853822 FAILED txn을종료할때오류메시지 "Cannot perform operationEND_TRANSACTION"(END_TRANSACTION작업을수행할수없음)가혼동을줌

6854142 3분간격으로원격브로커에대한 "클러스터연결대기중" "종료된클러스터연결"

6858121 원격 txn이있는경우 'imqcmd list txn'의브로커로그에 'Unknow transaction'(알수없는트랜잭션)이라는경고가혼동을줌

6858488 원격참가자브로커가자체COMMITTED tx을제거한경우 txn홈브로커에서COMMITTED txn이제거되지않음

6858905 Consumer.destroyConsumer의ConcurrentModificationException

6861362 RFE: JMSBridge:목표대상과소스Message.getJMSDestination과의자동매핑지원

6861528 RFE:목표내다양한대상에대한 JMSBridge: MessageTransformer.transform()분기메시지허용

6861653 트랜잭션부하가높은상황에서불완전한다운원격브로커를커밋하기위해과도한클러스터트랜잭션정보를전송함

6862413 오류메시지 "mq://xxx.xxx.xx.xx:pppp/ ... is reachable within 60 seconds"(60초안에mq://xxx.xxx.xx.xx:pppp/ ...에연결할수있음)가혼동을줌

6863867 다운원격브로커에서보류중인커밋이있는경우HA브로커재시작시MissingResourceException발생

Message Queue 4.4업데이트 1및최신릴리스에서해결된버그

1장 • 릴리스노트 33

Page 34: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

표 1–8 Message Queue 4.4에서해결된버그 (계속)버그 설명

6867596 브로커재시작후복구된 PREPARED txn이브로커를다시재시작할경우 PREPARED상태로되돌아감

6868525 링크수립에서원격브로커에임시대상을전달할때NullPointerException발생

6868578 수립된링크가핸드셰이크를방해할경우일부확인되지않은브로드캐스트/유니캐스트로인해링크다운발생

6871612 HA로그메시지 "Cant notify transaction.completion.."(트랜잭션완료를알릴수없음)보류중인브로커가다운된경우원격메시지를소비할때

6886391 메시지가이미제거된경우인식메시지에서NullPointerException발생

Message Queue 4.3에서해결된버그다음표는Message Queue 4.3에서해결된버그를설명합니다.

표 1–9 Message Queue 4에서해결된버그. 3

버그 설명

6634033 클러스터프로토콜이 imqConsumerFlowLimit값을클라이언트가생성된원격브로커로전파하지않음

6713012 클러스터의브로커에서사용자가완전삭제되는동시에원격브로커가다시시작되면일부메시지가전달되지않을수있음

6727555 브로커로그메시지 "Max bytes per msg exceeded"에실제메시지크기및전환된 max

bytes per message값이있음

6737404 JMX메트릭은대상(주제및대기열)에서디스패치되었지만사용자에게아직전달되지않은메시지수를제공해야함

6740568 단일트랜잭션에서너무많은메시지를사용할경우브로커가예외를표시함

6758524 영구가입을나열하는명령(imqcmd list dur -d "foo.*")이대상이름에와일드카드문자를허용하지않음

6758952 imq.portmapper.hostname=localhost를설정하면브로커를클러스터에연결할수없음

6758817 imq.cluster.hostname=localhost를설정하면(권장되지않음)다른시스템의브로커를클러스터에연결할수없음

Message Queue 4.2에서해결된버그다음표는Message Queue 4.2에서해결된버그를설명합니다.

Message Queue 4.4업데이트 1및최신릴리스에서해결된버그

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월34

Page 35: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

표 1–10 Message Queue 4.2에서해결된버그

버그 설명

6581592 설치프로그램또는제거프로그램이텍스트모드(installer –t)로실행되는경우요약화면에로그/요약파일이포함된디렉토리가표시되지만이파일의이름은나열되지않음

6585911 설치프로그램의 JDK선택화면에설치프로그램에번들로제공되며설치프로그램실행에사용되는 JRE가잘못포함되어있음

6587112 다중바이트로켈에서설치프로그램요약화면에알수없는문자가표시됨

6587127 응답파일을참조하여설치프로그램을실행하는경우(installer -a filename -s)응답파일이없으면일관성없고모호한오류메시지가표시됨

6590969 클라이언트연결인증에DN사용자이름형식이허용됨

6594381 시스템에이전버전의Message Queue현지화RPM이있을경우Message Queue 4.1현지화RPM설치(다국어패키지화면에서 "Message Queue다국어패키지설치"를선택하여실행)에실패함

6599144 Message Queue 4.2를제거할때 Java SE 6에서는스플래시화면과제거프로그램이중지되고회색의빈화면이표시되지만 Java SE 5에서는제대로작동함

6615741 원래사용자가롤백전에닫힌경우롤백된트랜잭션사용자세션에전달된메시지가재전송되지않음

6629922 분산트랜잭션처리기에서비활성사용자에게메시지를올바른순서로재전송하지않음

6635130 대상이메모리또는메시지제한에도달했기때문에브로커에서일시중지되었던비지속성메시지의생성을다시시작하는것을생성자에알리지못함

6641117 원래사용자가롤백후에닫힌경우롤백된트랜잭션사용자세션에전달된메시지가재전송되지않음

6683897 구성이성공적으로완료된것같은경우에도Message Queue설치프로그램의요약화면에설치프로그램이일부컴퓨터의 /dev/sterr에쓸수없다는구성오류가보고됩니다.

6684069 사용자트랜잭션을통해대량의메시지가원격클라이언트로전달되는브로커클러스터에서트랜잭션완결이실패함

6688935 포트매퍼읽기시간초과의기본값이너무작음

6695238 경로에공백이있는위치에설치된브로커에C클라이언트응용프로그램으로연결할수없음

6710168 중간에다시시작하지않고대상을두번일시중지한경우사용자가더이상메시지를사용하지않음

6710169 JMX작업 ConsumerManagerMonitor.getConsumerInfo에서확인모드에대해항상SESSION_TRANSACTED를반환함

Message Queue 4.4업데이트 1및최신릴리스에서해결된버그

1장 • 릴리스노트 35

Page 36: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

Message Queue 4.1에서해결된버그다음표는Message Queue 4.1에서해결된버그를설명합니다.

표 1–11 Message Queue 4.1에서해결된버그

버그 설명

6381703 메시지를만든브로커가다시시작되면트랜잭션된원격메시지가두번완결될수있음

6388049 완료되지않은분산트랜잭션을정리할수없음

6401169 imqcmd에대한완결및롤백옵션이확인을요청하는메시지를표시하지않음

6473052 자동생성된대기열의기본값은라운드로빈되어야함 (MaxNumberConsumers = -1)

6474990 imqcmd list dst명령에대해브로커로그가 ConcurrentModificationException을표시함

6487413 제한동작이 REMOVE_OLDEST또는 REMOVE_LOWER_PRIORITY일경우메모리누출이발생함

6488340 브로커가회전하고클라이언트가응답확인을기다림

6502744 브로커가사용불능메시지대기열의기본제한인 1000개메시지를따르지않음

6517341 imqReconnectEnabled등록정보값에관계없이클라이언트가다시연결될수있도록하여클라이언트를향상된브로커클러스터에연결할경우클라이언트런타임의다시연결논리가향상되어야함

6528736 시작도중Windows자동시작서비스(imqbrokersvc)에충돌이발생함

6561494 메시지와사용자가한세션을공유한경우메시지가잘못된사용자에게전송됨

6567439 PREPARED트랜잭션에서생성된메시지가브로커다시시작후에완결되면메시지가잘못된순서로전송됨

Message Queue 4.0에서해결된버그다음표는Message Queue 4.0에서해결된버그를설명합니다.

표 1–12 Message Queue 4.0에서해결된버그

버그번호 설명

4986481 Message Queue 3.5의경우자동다시연결모드에서 Session.recover호출이정지될수있었음

4987325 Session.recover호출후재전송된플래그가재전송된메시지에대해 false로설정되었음

6157073 연결총수뿐아니라서비스의연결수를포함시키기위해새연결메시지를변경함

Message Queue 4.4업데이트 1및최신릴리스에서해결된버그

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월36

Page 37: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

표 1–12 Message Queue 4.0에서해결된버그 (계속)버그번호 설명

6193884 메시지에ASCII가아닌문자를사용하는로켈의경우Message Queue는알아볼수없는메시지를 syslog로출력함

6196233 JMSMessageID를사용하여메시지를선택할수없음

6251450 클러스터종료도중 connectList의 ConcurrentModificationException

6252763 java.nio.HeapByteBuffer.putLong/Int의 java.nio.BufferOverflowException

6260076 Oracle저장소에서시작후첫번째로게시되는메시지가느림

6260814 JMSXUserID에서의선택기처리가항상 false로처리됨

6264003 대기열브라우저가완결되지않은트랜잭션의일부인메시지를표시함

6271876 사용되지않은메시지를가진사용자를종료할때연결흐름제어가제대로작동하지않음

6279833 Message Queue에서두개의브로커가동일한 jdbc테이블을사용해서는안됨

6293053 시스템의 IP주소가변경된경우저장소를지우기전에는(—reset store사용)마스터브로커가올바르게시작되지않음

6294767 Message Queue브로커가여는네트워크소켓에 SO_REUSEADDR을설정해야함

6304949 ClientID등록정보를 TopicConnectionFactory

6307056 txn로그에성능병목현상발생

6320138 Message Queue C API에회신헤더로부터대기열의이름을확인하는기능이없음

6320325 JDK 1.4와 JDK 1.5가모두설치된경우브로커가 JDK 1.5보다 JDK 1.4를먼저선택하는경우가있음

6321117 멀티브로커클러스터초기화시 java.lang.NullPointerException발생

6330053 가입자의트랜잭션을완결할때 jms클라이언트에서java.lang.NoClassDefFoundError가발생함

6340250 C-API에서 MESSAGE유형지원

6351293 Apache Derby데이터베이스지원추가

Message Queue 4.4업데이트1설명서업데이트이절에서는Message Queue 4.4업데이트 1설명서업데이트에대해설명합니다.

■ 38페이지 “호환성문제”■ 38페이지 “Message Queue 4.4업데이트 1설명서세트변경사항”

Message Queue 4.4업데이트 1설명서업데이트

1장 • 릴리스노트 37

Page 38: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

호환성문제이절에서는Message Queue 4.4업데이트 1에대한호환성문제에대해설명합니다.

인터페이스안정성Sun GlassFish Message Queue는시간이흐름에따라변경될수있는많은인터페이스를사용합니다. Sun GlassFish Message Queue 4.4 Administration Guide의부록 B, “Stability ofMessage Queue Interfaces”에서는인터페이스를안정성에따라분류합니다.인터페이스가안정적일수록제품의향후버전에서변경될가능성이적어집니다.

Message Queue의다음주요릴리스와관련된문제Message Queue의다음주요릴리스에도입되는변경사항으로인해현재Message Queue클라이언트응용프로그램이새릴리스와호환되지않을수있습니다.이정보는완전공개라는취지하에제공됩니다.

■ Sun GlassFish Message Queue의일부로설치된개별파일의위치가변경될수있습니다.따라서특정Message Queue파일의현재위치에의존하는기존응용프로그램이작동하지않을수있습니다.

■ 최신브로커가있는클러스터에서Message Queue 3.5이전브로커가더이상작동하지않을수있습니다.

■ Message Queue의향후릴리스에서클라이언트가 1.5이전버전의 JDK를사용하지못할수있습니다.

■ Message Queue의향후릴리스에서클라이언트가 1.6이전버전의 JDK를사용하지못할수있습니다.

Message Queue 4.4업데이트1설명서세트변경사항Message Queue 4.4업데이트 1설명서세트에는아래에설명된것과같은Message Queue4.4설명서세트업데이트가포함되어있습니다.

기술개요Sun GlassFish Message Queue 4.4 Technical Overview에는Message Queue 4.4의새로운기능이반영되었습니다.

관리설명서Sun GlassFish Message Queue 4.4 Administration Guide에는사소한버그해결과MessageQueue 4.4의새로운기능이반영되었습니다.

Message Queue 4.4업데이트 1설명서업데이트

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월38

Page 39: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

Java클라이언트용개발안내서Sun GlassFish Message Queue 4.4 Developer’s Guide for Java Clients에는사소한버그해결사항이포함되었습니다.

C클라이언트용개발안내서Sun GlassFish Message Queue 4.4 Developer’s Guide for C Clients에는사소한버그수정사항이포함되었습니다.

JMX클라이언트용개발안내서Sun GlassFish Message Queue 4.4 Developer’s Guide for JMX Clients에는새로운MessageQueue제품이름과버전번호가반영되었습니다.

알려진문제점및제한사항이절에는Message Queue 4.4업데이트 1의알려진문제점이나열되어있습니다.적용되는제품영역은다음과같습니다.■ 39페이지 “설치문제”■ 45페이지 “더이상사용되지않는비밀번호옵션”■ 46페이지 “관리/구성문제”■ 47페이지 “브로커문제”■ 49페이지 “브로커클러스터”■ 51페이지 “JMX문제”■ 51페이지 “SOAP지원”

현재버그와상태,해결방법에대한목록을보려면 Java Developer ConnectionTM회원은Java Developer Connection웹사이트의 Bug Parade페이지를확인해야합니다.새로운버그를보고하기전에이페이지를확인하십시오.여기에모든Message Queue버그가나열되어있지는않지만문제가보고된적이있는지여부를확인할수있습니다.

http://bugs.sun.com/bugdatabase/index.jsp

주 – Java Developer Connection구성원의경우무료이지만등록해야합니다. JavaDeveloper Connection구성원이되는방법에대한자세한내용은 Sun의 "For Developers"웹페이지를참조하십시오.

새버그를보고하거나기능요청서를제출하려면 [email protected]으로메일을보내십시오.

설치문제이절에서는Message Queue버전 4.4업데이트 1설치와관련된문제에대해설명합니다.

알려진문제점및제한사항

1장 • 릴리스노트 39

Page 40: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

제품등록및 Java ESMessage Queue 4.4는Message Queue 4.2및 4.1과마찬가지로Message Queue에필요한 JDK,NSS, JavaHelp등의 Java ES(Enterprise System)공유구성요소까지도설치및업그레이드하는비교적새로운설치프로그램으로설치됩니다.

새로운Message Queue설치프로그램과이전버전의Message Queue를설치하는데사용된기존 Java ES설치프로그램은같은제품레지스트리를공유하지않습니다. Java ES설치프로그램으로설치한버전의Message Queue를제거한다음Message Queue설치프로그램을사용하여Message Queue 4.4를설치할경우 Java ES제품레지스트리가불일치상태가될수있습니다.따라서 Java ES제거프로그램이실행되면Message Queue4.4와여기에서사용되는공유구성요소(Java ES로설치하지않은구성요소)가실수로제거될수있습니다.

Java ES설치프로그램으로설치한Message Queue소프트웨어를업그레이드하는가장좋은방법은다음과같습니다.

1. Java ES제거프로그램을사용하여Message Queue와해당공유구성요소를제거합니다.

2. Message Queue설치프로그램을사용하여Message Queue 4.4를설치합니다.

모든플랫폼설치여기서설명하는문제는모든플랫폼설치에적용됩니다.

■ 설치준비완료화면에서제품이름이 Sun Java System Message Queue 4.3이아닌"mq"로표시됩니다.(버그 6650841)

■ 설치프로그램이Message Queue 4.3을설치하는도중진행률화면이표시될때취소버튼이활성화됩니다.이때취소버튼을선택하면설치가완료되지않거나손상됩니다. (버그 6595578)

■ 설치프로그램요약화면에클릭시로그또는요약페이지뷰어를실행하는많은링크가포함됩니다. "닫기"레이블로표시된버튼대신창닫기버튼 "X"를사용하여이뷰어창을닫으면이뷰어창의백업을가져올수없게됩니다. (버그 6587138)해결방법:닫기레이블이표시된버튼을사용하여창을닫습니다.

■ 등록을건너뛰는자동설치를수행한후등록전용모드에서설치프로그램을실행하면(installer -r)등록이실패하고 "Premature end of file"오류가발생합니다.(버그 6767988)

■ JDK가설치되지않은컴퓨터에서Message Queue설치프로그램을실행할경우"Invalid root in registry key HKLM\SOFTWARE\JavaSoft\Java RuntimeEnvironment\CurrentVersion"오류메시지가표시됩니다. (버그 6764358)해결방법:설치프로그램을실행하기전에 JDK를설치합니다.

■ 설치준비완료화면에서설치버튼을클릭하기전에Message Queue설치프로그램에서mqInstallHome디렉토리가생성됩니다.(버그 6595590)

알려진문제점및제한사항

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월40

Page 41: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

Windows설치Message Queue를Windows에설치할경우에는다음제한사항에유의하십시오.■ Windows플랫폼에설치된Message Queue 4.3디렉토리구조가이전릴리스의구조와다릅니다. Sun Java System Message Queue 4.3 Installation Guide의 “Installed DirectoryStructure”를참조하십시오.

■ 설치프로그램을실행해도Message Queue에대한항목이시작>프로그램메뉴에추가되지않습니다. (버그 6567258)해결방법:관리콘솔을시작하려면 Sun GlassFish Message Queue 4.4 AdministrationGuide의 “Starting the Administration Console”에표시된대로명령줄을사용합니다.

■ 설치프로그램을실행해도 IMQ_HOME\mq\bin디렉토리가 PATH환경변수에추가되지않습니다.(버그 6567197)해결방법: PATH환경변수에이항목을직접추가하거나Message Queue유틸리티를호출할때전체경로이름(IMQ_HOME\mq\bin\ command)을입력해야합니다.

■ 설치프로그램을실행해도Message Queue가설치되었음을나타내는항목이Windows레지스트리에추가되지않습니다. (버그 6586389)

■ 설치프로그램을실행해도Message Queue브로커가Windows서비스로추가되지않습니다.해결방법: imqsvcadm명령을사용하여수동으로Message Queue브로커를Windows서비스로추가합니다.

■ JDK가설치되지않은경우설치프로그램을실행하면 "Invalid root in registry keyHKLM\\SOFTWARE\\JavaSoft\\Java Runtime Environment\\CurrentVersion"오류가발생합니다. (버그 6764358)해결방법:이오류가표시되면 JDK를설치하고진행합니다.

■ 응답파일을사용하여자동모드로실행하는경우설치프로그램이즉시원래대로돌아갑니다.설치가수행되지만사용자는자동설치가실제로완료된시점을알수없습니다.(버그 6586560)

■ 운영체제가다른드라이브에설치된경우에도설치프로그램이Message Queue를C:\에설치합니다. (버그 6673511)

■ Windows에서설치및제거하는경우사용자가실행할수있는 .bat파일도없고,Windows제어판의프로그램추가/제거를사용하여프로그램을제거할수도없습니다. (버그 6673417)

■ Windows Vista의경우명령프롬프트에서Administrator로설치하지않는한MessageQueue를 C:\Program Files에설치할수없습니다. (버그 6701661)해결방법:관리자로명령프롬프트를사용하여설치하려면다음을수행합니다.1.시작→프로그램→보조프로그램→명령프롬프트를선택합니다.2.명령프롬프트를마우스오른쪽버튼으로누릅니다.3.관리자권한으로실행을선택합니다.4.디렉토리를Message Queue 4.2설치이미지로변경합니다.

알려진문제점및제한사항

1장 • 릴리스노트 41

Page 42: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

5. installer.vbs를실행합니다.■ 제거프로그램이드라이런모드로실행되는경우(uninstaller -n)제거가올바르게수행되지않습니다. (버그 6719051)해결방법:다음명령을사용하여자동설치를수행합니다.uninstaller -s

■ 설치프로그램홈페이지의 "Install Home"문자열이현지화되지않았습니다. (버그6592491)

■ Message Queue Zip기반제거프로그램이Windows 2003에서정지합니다. (버그6764370)해결방법: mqInstallHome디렉토리를수동으로제거합니다.

Solaris설치■ 설치프로그램이드라이런모드로실행되는경우(installer –n)요약화면에오류메시지가표시되고설치상태가 "불완전"으로표시됩니다.이는잘못된정보입니다.드라이런에서는시스템에어떠한것도설치되지않습니다.다음자동설치를수행할때사용할수있는응답파일만만들어집니다. (버그 6594351)

■ 응답파일을사용하여자동모드로실행할경우(installer -a filename -s)설치프로그램에서 Sun Connection등록을수행하지않습니다. (버그 6710268)

Linux설치Linux플랫폼에서는다음문제가설치작업에영향을줍니다.■ Red Hat Linux 5에서는C클라이언트응용프로그램을실행하는데필요한

compat-libstdc++라이브러리가Message Queue배포에포함되어있지않으므로Message Queue설치프로그램을통해설치되지않습니다. C클라이언트를개발및실행할경우이라이브러리를수동으로설치해야합니다.일반적으로 compat-libstdc++ rpm은사용하고있는 Linux버전의설치미디어에있습니다.다음명령을사용하여설치할수있습니다.rpm -ivh compat-libstdc++-x-x.x.x.x..rpm여기서 x는버전번호를나타냅니다.라이브러리가성공적으로설치되었는지확인하려면다음명령을사용합니다.rpm -qa | grep compat-libstdc++

■ Red Hat Linux 5의경우 PR_LOAD_LIBRARY_ERROR오류로 C클라이언트가실패할수있습니다(버그 6885978).Red Hat Linux 5에서C클라이언트가실패하여다음과유사한메시지를표시할수있습니다.

"Preparing for NSS initialization ...""Initializing NSS ..."

알려진문제점및제한사항

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월42

Page 43: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

"Could not connect to broker because ’PR_LOAD_LIBRARY_ERROR’ (-5977)."producer(): Error: PR_LOAD_LIBRARY_ERROR

이러한오류는NSS/NSPR라이브러리에액세스할수없기때문에발생합니다.

이문제를해결하려면NSS/NSPR라이브러리 IMQ_HOME/nss/lib에대한경로를포함하도록 LD_LIBRARY_PATH환경변수를설정하십시오.

■ JDK선택패널에서스크롤목록에한가지항목만표시됩니다.이로인해목록에서다른 JDK를선택하기어렵습니다. (버그 6584735)

■ JDK가이미설치되어있는경우사용자가 JDK선택화면에서 "기본 JDK설치"를선택하면설치프로그램이 JDK설치를계속시도하며패키지를설치할수없다고보고합니다.이문제에도불구하고설치는성공적으로완료됩니다. (버그 6581310)

■ 현재설치된 JDK의버전이 JDK 1.5.0_15(Message Queue설치프로그램에서일반적으로설치되는버전)보다이후버전인경우Message Queue제거프로그램에서기본 IMQ_JAVAHOME디렉토리를찾을수없어오류를반환합니다. (버그 6673415)해결방법: Message Queue제거프로그램을실행하기전에다음과같이 JDK 1.5를수동으로설치합니다.# cd installImage/Product/UNIX/LINUX/X86/2.4/Packages# rpm -i --force jdk-1.5.0_15–linux- arch.rpm여기서 arch는 i586또는 amd64입니다.

■ 설치프로그램이드라이런모드로실행되는경우(installer –n)요약화면에오류메시지가표시되고설치상태가 "불완전"으로표시됩니다.이는잘못된정보입니다.드라이런에서는시스템에어떠한것도설치되지않습니다.다음자동설치를수행할때사용할수있는응답파일만만들어집니다. (버그 6594351)

설치프로그램의버전이상설치프로그램에서Message Queue버전정보를불분명한형식으로표시합니다. (버그6586507)

Solaris플랫폼

Solaris플랫폼의경우다음표를참조하여설치프로그램에표시되는Message Queue버전을확인합니다.

표 1–13 버전문자열변환

Solaris OS에서설치프로그램에표시되는버전 해당Message Queue릴리스

4.4.1.0 4.4업데이트 1

4.4.0.0 4.4

4.3.0.0 4.3

알려진문제점및제한사항

1장 • 릴리스노트 43

Page 44: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

표 1–13 버전문자열변환 (계속)Solaris OS에서설치프로그램에표시되는버전 해당Message Queue릴리스

4.2.0.0 4.2

4.1.0.2 4.1패치 2

4.1.0.1 4.1패치 1

4.1.0.0 4.1

3.7.2.1 3.7 UR2패치 1

3.7.0.2 3.7 UR2

3.7.0.1 3.7 UR1

3.6.0.0 3.6

3.6.0.4 3.6 SP4

3.6.0.3 3.6 SP3

3.6.0.2 3.6 SP2

3.6.0.1 3.6 SP1

주 – 3.6 SP4에대한패치릴리스(예: 3.6 SP4패치 1)의경우설치프로그램에표시되는릴리스문자열이동일합니다. imqbrokerd -version명령을실행하여정확한버전을확인해야합니다.

Linux플랫폼Linux플랫폼의경우설치프로그램에서표시되는버전번호의형식은다음과같습니다.

majorReleaseNumber.minorReleaseNumber-someNumber

예: 3.7–22.이는 3.7릴리스중하나를나타낼뿐이며특정릴리스를가리키지는않습니다.설치된Message Queue버전을확인하려면다음명령을실행합니다.

imqbrokerd -version.

현지화문제다음문제는현지화문제와관련된내용입니다.■ 설치프로그램이텍스트모드(installer –t),비영어로켈에서실행되는경우다중바이트문자가알아볼수없게표시됩니다. (버그 6586923)

■ 설치프로그램진행률화면에서진행률표시줄에알수없는문자가표시됩니다.도구설명이영어이외의로켈로하드코드되어있습니다. (버그 6591632)

알려진문제점및제한사항

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월44

Page 45: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

■ 설치프로그램이실행되는로켈에관계없이설치프로그램의사용권화면에영문사용권텍스트가표시됩니다. (버그 6592399)해결방법:현지화된사용권파일에액세스하려면 LICENSE_MULTILANGUAGE.pdf

파일을찾아보십시오.■ 설치프로그램사용도움말텍스트가현지화되지않았습니다. (버그 6592493)■ 설치프로그램요약HTML페이지에표시되는문자열 "None"이영어로하드코드되어있습니다. (버그 6593089)

■ 설치프로그램을독일어로켈로실행하면시작화면에다른로켈에서는표시되는전체텍스트가표시되지않습니다. (버그 6592666)

■ 설치프로그램설치홈화면에표시되어야할 "설치홈"문자열이현지화되지않았습니다.설치프로그램을영어이외의로켈로실행한경우에도이문자열은영어로표시됩니다. (버그 6592491)

■ 설치프로그램이텍스트모드(installer –t)로실행되는경우설치프로그램이실행되는로켈에관계없이영어응답선택항목 "Yes"와 "No"가사용됩니다. (버그6593230)

■ 설치프로그램 JDK선택화면의찾아보기버튼에대한도구설명이영문으로하드코드되어있습니다. (버그 6593085)

더이상사용되지않는비밀번호옵션이전버전의Message Queue에서는 —p또는 —password옵션을사용하여 imqcmd,imqbrokerd및 imdbmgr명령에대한비밀번호를대화식으로지정할수있었습니다.버전4.0부터는이러한옵션이더이상사용되지않았습니다.

대신관련비밀번호를지정하는비밀번호파일을생성하고 -passfile명령옵션을사용하여비밀번호파일을참조하거나명령에서프롬프트가표시되었을때간단히비밀번호를입력할수있습니다.

비밀번호파일에는아래나열된비밀번호가하나이상포함될수있습니다.■ SSL키저장소를여는데사용되는키저장소비밀번호.이비밀번호를지정하려면

imq.keystore.password등록정보를사용합니다.■ 익명연결이아닌경우 LDAP디렉토리에안전하게연결하는데사용되는 LDAP저장소비밀번호.이비밀번호를지정하려면 imq.user_repository.ldap.password

등록정보를사용합니다.■ JDBC호환데이터베이스에연결하는데사용되는 JDBC데이터베이스비밀번호.이비밀번호를지정하려면 imq.persist.jdbc.vendorName.password등록정보를사용합니다.등록정보이름의 vendorName구성요소는데이터베이스공급업체를지정하는변수입니다.이항목은 hadb, derby, pointbase, oracle또는 mysql일수있습니다.

■ 브로커관리작업을수행하는데사용되는 imqcmd명령에대한비밀번호.이비밀번호를지정하려면 imq.imqcmd.password등록정보를사용합니다.

알려진문제점및제한사항

1장 • 릴리스노트 45

Page 46: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

다음예에서는 JDBC데이터베이스에대한비밀번호가비밀번호파일에서abracadabra로설정되어있습니다.

imq.persist.jdbc.mysql.password=abracadabra

다음중한가지방법으로비밀번호파일을사용할수있습니다.■ 브로커의 config.properties파일에다음등록정보를설정하여비밀번호파일을사용하도록브로커를구성합니다.imq.passfile.enabled=true

imq.passfile.dirpath= passwordFileDirectoryimq.passfile.name=passwordFileName

■ 관련명령의 -passfile옵션을사용합니다.예를들면다음과같습니다.imqbrokerd -passfile passwordFileName

관리/구성문제다음문제는Message Queue관리및구성에관련된내용입니다.■ Windows플랫폼에서는 imqsvcadm명령을사용하여수동으로Message Queue브로커를Windows서비스로추가해야합니다.설치프로그램을실행해도브로커가서비스로추가되지않습니다.

■ Windows플랫폼의경우기본적으로설정되어있는기본제공Windows방화벽에서브로커가클라이언트에서들어오는연결을허용할수있도록방화벽규칙을수동으로구성해야합니다. (버그 6675595)1. 제어판에서Windows방화벽을두번누릅니다.

Windows방화벽설정대화상자를열려면사용자계정제어대화상자에서계속을눌러야합니다.

2. Windows방화벽설정대화상자에서예외탭을누릅니다.3. 프로그램추가를누릅니다.4. 프로그램추가대화상자에서 java.exe를선택하고찾아보기를누릅니다.

Windows에서브로커프로세스는 Java Platform SE이진형식으로확인됩니다.그러므로브로커에서사용되는 java.exe를찾습니다(일반적으로jdk1.5.0_15\jre\bin\java.exe에있음).

5. 범위변경을누릅니다.6. 범위변경대화상자에서 "모든컴퓨터(인터넷에있는컴퓨터포함)"을선택합니다.

7. 확인을누릅니다.8. 프로그램추가대화상자에서확인을누릅니다.9. Windows방화벽설정대화상자에서확인을누릅니다.

알려진문제점및제한사항

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월46

Page 47: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

■ Windows플랫폼에서 CLASSPATH에큰따옴표가포함되어있는경우 imqadmin및imqobjmgr명령에서오류가발생합니다. (버그 5060769)해결방법:명령프롬프트창을열고 CLASSPATH를설정해제합니다.set classpath=

그리고같은명령프롬프트창에서원하는명령을실행합니다.예를들면다음과같습니다.mqInstallHome\mq\bin\imqadmin

■ 모든 Solaris및Windows스크립트에서 -javahome옵션의입력값에공백이포함된경우이옵션이작동하지않습니다. (버그 4683029)javahome옵션은Message Queue명령및유틸리티에서사용할대체 Java 2호환런타임을지정하는데사용됩니다.그러나대체 Java런타임의경로이름에는공백이포함되지않아야합니다.다음은공백을포함하는경로의예입니다.Windows: C:\jdk 1.4

Solaris: /work/java 1.4

해결방법:공백이없는위치또는경로에 Java런타임을설치합니다.■ imqQueueBrowserMaxMessagesPerRetrieve속성은클라이언트런타임에서대기열의내용을찾아볼때한번에검색하는메시지의최대수를지정합니다.이속성은대기열에지정된메시지의일괄처리방법과클라이언트런타임에전달되는방법에영향을주지만찾는총메시지수에는영향을주지않습니다.이속성은찾기메커니즘에만영향을주며대기열메시지전달에는영향을주지않습니다. (버그6387631)

■ SELinux를실행하는 Linux플랫폼에서업데이트센터 pkg명령이실패합니다(버그 6892062).해결방법:이문제는업데이트센터의알려진문제로인해발생합니다(https://updatecenter2.dev.java.net/issues/show_bug.cgi?id=1211).시행이활성화된SELinux에서작동하도록다음명령을통해 pkg를사용가능하게해야합니다.

# chcon -f -t textrel_shlib_t $IMAGE/pkg/vendor-packages/OpenSSL/crypto.so

브로커문제다음문제는Message Queue브로커에영향을줍니다.

■ Message Queue 4.4클라이언트가Message Queue 3.7브로커에연결할때불분명한경고를수신합니다(경고 6899886).Message Queue 4.4클라이언트가Message Queue 3.7브로커에연결할때클라이언트가다음과같은형태의경고를수신합니다.

WARNING [I500]: Caught JVM exception: ...

[C4036]: A broker error occurred. :[505] bad version ...

알려진문제점및제한사항

1장 • 릴리스노트 47

Page 48: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

이 “bad version”경고는해당클라이언트가더낮은프로토콜수준에서브로커에다시연결해야함을나타냅니다.

■ JDBC데이터저장소사용시데이터베이스암호가일반텍스트로저장됩니다(버그6691717).해결방법: Sun GlassFish Message Queue 4.4 Administration Guide의 “Password Files”.

■ 영구데이터저장소에서너무많은대상이열리면브로커에액세스할수없게됩니다.(버그 4953354)해결방법:이상황은브로커가시스템파일열기설명자제한에도달하면발생합니다. Solaris와 Linux에서 ulimit명령을사용하여파일설명자제한을늘립니다.

■ 대상이삭제되면사용자와의연결이끊어집니다. (버그 5060787)대상이삭제되면활성사용자와의연결이끊어집니다.사용자와의연결이끊어진후에는대상이다시생성된후에도더이상메시지를받을수없습니다.

■ HTTP연결서비스를사용하는 JMS클라이언트가갑자기종료되면(예: Ctrl-C사용)브로커는약 1분이경과한후클라이언트연결및연결된모든자원을해제합니다.클라이언트의다른인스턴스가 1분이내에시작되어동일한클라이언트아이디,영구가입또는대기열을사용하려고하면 "클라이언트아이디가이미사용중"이라는예외가발생할수있습니다.이것은실제문제가아니라위에서설명한종료프로세스의부작용일뿐입니다.약 1분간의지연후에클라이언트가시작되면모든문제가해결됩니다.

■ MySQL데이터베이스를데이터저장소로사용하는경우 1MB보다큰메시지를저장하면 "Packet for query is too large..."라는 SQL예외가발생합니다. (버그 6682815)해결방법: --max_allowed_packet옵션을기본값인 1MB보다큰값으로설정하고MySQL서버를시작합니다.예를들면,다음값을사용합니다.--max_allowed_packet=60M

■ MySQL데이터베이스를고가용성공유데이터저장소로사용하는경우MySQL저장소엔진을 NDBCLUSTER로구성하는메커니즘이필요합니다. (버그 6691394)해결방법:다음등록정보값을브로커의 config.properties파일에추가합니다(SunGlassFish Message Queue 4.4 Administration Guide의 “Enhanced Clusters: JDBCConfiguration Properties ”참조).imq.persist.jdbc.mysql.tableoption=EMGINE=NDBCLUSTER

■ Oracle 9i(JDBC 9.2.0.x)드라이버를사용할경우브로커에서 "Failed to persistproperty..."예외가발생합니다. (버그 6626825)해결방법:브로커가최적화되는Oracles 10g(JDBC 10.2.0.x)드라이버를사용합니다.imq.persist.jdbc.derby.table.MYCONSTATE41.index.IDX2=

CREATE INDEX &(index) ON $(name) (MESSAAGE_ID)

■ Java DB데이터베이스를데이터저장소로사용하는경우메시지를저장하면 "lockcould not be obtained within the time requested"라는 SQLException이발생합니다. (버그6691394)

알려진문제점및제한사항

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월48

Page 49: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

해결방법:브로커의 config.properties파일에다음등록정보값을추가합니다.imq.persist.jdbc.derby.table.MYCONSTATE41.index.IDX2=

CREATE INDEX &(index) ON $(name) (MESSAAGE_ID)

■ AIX에서 IBM JVM을사용할때간혹브로커가분명한이유없이메모리부족또는RED상태가됩니다(버그-6899526).해결방법:최신 IBM JVM버전(Java Runtime 1.6.0 IBM Corporation이상)을사용하고다음 IBM JVM GC옵션을 imqbrokerd에전달하십시오.

# imqbrokerd -vmargs -Xgcpolicy:gencon

브로커클러스터다음문제는브로커클러스터에영향을줍니다.

■ 비정상적으로종료된경우MySQL클러스터데이터저장소가있는고가용성브로커를재시작하지못합니다(버그 6896877).해결방법:이문제는MySQL클러스터의알려진문제로인해발생합니다(http://bugs.mysql.com/bug.php?id=47955).이문제에대한수정사항이MySQL버전5.1.39-ndb-6.3.28 , 5.1.39-ndb-7.0.9및 5.1.39-ndb-7.1.0에포함되었습니다.

■ 이릴리스에서는완전히연결된브로커클러스터만지원됩니다.즉,클러스터에있는모든브로커가해당클러스터내의다른모든브로커와직접통신해야합니다.imqbrokerd -cluster명령줄인수를사용하여기존클러스터에브로커를연결하는경우에는클러스터에있는모든브로커가포함되어있는지확인해야합니다.

■ 클라이언트가향상된브로커클러스터에있는브로커에연결된경우에는클라이언트런타임에서성공할때까지다시연결을시도합니다(imqAddressListIterations연결팩토리속성값무시).

■ 클라이언트에서는홈브로커에있는대기열의내용만찾아볼수있습니다.그렇지만클라이언트는여전히클러스터의모든대기열로메시지를보내거나모든대기열에서메시지를사용할수있습니다.제한은대기열찾아보기에만영향을줍니다.

■ 버전 4.3브로커가포함되어있는기존클러스터의경우모든브로커가버전 3.5이상이어야합니다.

■ Message Queue 4.3, 4.2및 4.1브로커는기본적으로Message Queue 3.7또는 3.6브로커를사용하는클러스터에서상호운용되지않습니다.이두버전사이에서imq.autocreate.queue.maxNumActiveConsumers의기본값이변경되었기때문입니다.(버그 6716400)해결방법:모든브로커에서 imq.autocreate.queue.maxNumActiveConsumers값과동일한변경값을사용하는지확인합니다.일반적으로이작업은 3.7또는 3.6브로커에서사용되는구성과일치하도록Message Queue 4.3, 4.2및 4.1구성을변경하여수행합니다(기본적으로 -1값에서이전버전기본값 1로변경).

알려진문제점및제한사항

1장 • 릴리스노트 49

Page 50: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

■ Message Queue 4.3(또는 4.x)브로커를Message Queue 3.x브로커클러스터에추가하려면마스터브로커가실행되고있어야합니다. (버그 6763796)

■ Sun GlassFish Message Queue 4.4 Administration Guide의 “Cluster Conversion:JDBC-Based Data Store”에설명된대로기존클러스터에서향상된클러스터로변환하면Message Queue데이터베이스관리자유틸리티(imqdbmgr)를사용하여기존독립실행형 JDBC기반데이터저장소를공유 JDBC데이터저장소로변환할수있습니다.

■ HADB를사용하는브로커는 10MB를초과하는메시지를처리할수없습니다. (버그6531734)

■ imqdbmgr upgrade hastore명령을사용하여HADB저장소로변환한경우저장소에메시지가 10,000개이상저장되면 "too many locks are set"메시지가발생하면서작업에실패할수있습니다. (버그 6588856)해결방법:다음명령을사용하여잠금수를늘립니다.hadbm set NumberOfLocks=<desiredNumber>

추가정보에대해서는 Sun Java System Application Server 9.1 Enterprise EditionTroubleshooting Guide의 "HADB Problems"를참조하십시오.

■ 한트랜잭션에서원격메시지가 500개이상완결되면브로커에서 "HADB-E-12815:Table memory space exhausted"오류가반환될수있습니다.(버그 6550483)추가정보에대해서는 Sun Java System Application Server 9.1 Enterprise EditionTroubleshooting Guide의 "HADB Problems"를참조하십시오.

■ 브로커클러스터에서브로커가열리지않은원격연결에메시지대기열을만듭니다.(버그 4951010)해결방법:일단연결이열리면사용자가메시지를수신합니다.사용자의연결이계속닫혀있으면메시지는다른사용자에게전달됩니다.

■ 한트랜잭션내에서원격브로커의메시지를두개이상사용할경우브로커에다음오류메시지가기록될수있습니다.이메시지는문제를일으키지않으며무시할수있습니다.

[26/Jul/2007:13:18:27 PDT] WARNING [B2117]:

Message acknowledgement failed from

mq://129.145.130.95:7677/?instName=a&brokerSessionUID=3209681167602264320:

ackStatus = NOT_FOUND(404)\

Reason = Update remote transaction state to COMMITED(6):

transaction 3534784765719091968 not found, the transaction

may have already been committed.

AckType = MSG_CONSUMED

MessageBrokerSession = 3209681167602264320

TransactionID = 3534784765719091968

SysMessageID = 8-129.145.130.95(95:fd:93:91:ec:a0)-33220-1185481094690

ConsumerUID = 3534784765719133952\par

[26/Jul/2007:13:18:27 PDT] WARNING Notify commit transaction

알려진문제점및제한사항

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월50

Page 51: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

[8-129.145.130.95(95:fd:93:91:ec:a0)-33220-1185481094690,

[consumer:3534784765719133952, type=NONE]]

TUID=3534784765719091968 got response:

com.sun.messaging.jmq.jmsserver.util.BrokerException:

Update remote transaction state to COMMITED(6):

transaction 3534784765719091968 not found, the transaction may have already

been committed.:

com.sun.messaging.jmq.jmsserver.util.BrokerException: Update remote transaction

state to COMMITED(6): transaction 3534784765719091968 not found, the transaction

may have already been committed.r

이메시지는 imq.txn.reapLimit등록정보가한트랜잭션내의원격메시지수에비해낮을경우트랜잭션내의최근메시지에대한완결을메시지홈브로커에알릴때기록됩니다. (버그 6585449)

해결방법:이메시지를방지하려면 imq.txn.reapLimit등록정보의값을늘립니다.

JMX문제Windows플랫폼에서트랜잭션관리자모니터MBean의 getTransactionInfo메소드가잘못된트랜잭션작성시간이포함된트랜잭션정보를반환합니다. (버그 6393359)

해결방법:트랜잭션관리자모니터MBean의 getTransactionInfoByID메소드를대신사용합니다.

SOAP지원SOAP지원과관련된다음의두가지문제에대해잘알고있어야합니다.

■ Message Queue버전 4.0릴리스부터는 SOAP관리대상객체가더이상지원되지않습니다.

■ SOAP개발은 SUNWjaf, SUNWjmail, SUNWxsrt및 SUNWjaxp의여러파일에따라결정됩니다. Message Queue버전 4.1에서는 JDK버전 1.6.0이상에서Message Queue를실행중인경우에만사용자가이파일을사용할수있습니다.

■ 전에는 SAAJ 1.2구현 .jar에서 mail.jar을직접적으로참조했습니다. SAAJ 1.3에서는이참조가제거되었으므로Message Queue클라이언트에서 mail.jar을명시적으로CLASSPATH에두어야합니다.

알려진문제점및제한사항

1장 • 릴리스노트 51

Page 52: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

재배포가능파일Sun GlassFish Message Queue 4.4업데이트 1에는이진형식으로사용하고자유롭게배포할수있는다음과같은파일집합이포함되어있습니다.

fscontext.jar

imq.jar

imqjmx.jar

imqxm.jar

imqums.war

jaxm-api.jar

jms.jar

libmqcrt.sl (HP-UX)libmqcrt.so(UNIX)mqcrt1.dll(Windows)

LICENSE및 COPYRIGHT파일도재배포할수있습니다.

내게필요한옵션기능이매체를발행한이후릴리스된내게필요한옵션기능을사용하려면 Sun에요청하여구할수있는섹션 508제품평가를참조하여관련솔루션을배포하는데가장적합한버전을확인하십시오.응용프로그램의업데이트된버전은 http://sun.com/software/

javaenterprisesystem/get.html에서찾을수있습니다.

내게필요한옵션기능구현을위한 Sun의방침에대해자세히알아보려면http://sun.com/access를방문하십시오.

문제점보고및사용자의견제공방법Sun GlassFish Message Queue에문제가있으면다음방식중하나를사용하여 Sun고객지원부에문의하십시오.

■ Sun소프트웨어지원온라인서비스(http://www.sun.com/service/sunone/software)이사이트에는유지보수프로그램과지원담당자연락처뿐만아니라기술자료,온라인지원센터및 ProductTracker에대한링크가있습니다.

■ 유지보수계약과관련된직통전화번호

당사의지원팀이문제를해결하는데도움이될수있도록지원담당자에게문의하기전에다음정보를준비해두십시오.

■ 문제가발생한상황과해당문제가작업에미친영향등을포함한문제에대한자세한설명

■ 문제에영향을줄수있는모든패치및기타소프트웨어를포함한컴퓨터유형,운영체제버전및제품버전등의정보

■ 문제를재현하기위해사용한방법에대한자세한단계

■ 오류로그또는코어덤프

재배포가능파일

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월52

Page 53: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

Sun GlassFish소프트웨어포럼다음웹사이트에서는 Sun GlassFish Message Queue포럼을제공합니다.

http://swforum.sun.com/jive/forum.jspa?forumID=24

여러분의참여를환영합니다.

Java기술포럼Java기술포럼에는관련 JMS포럼이있습니다.

http://forum.java.sun.com

사용자의견환영Sun은설명서의내용을지속적으로개선하고자하며사용자여러분의의견과제안을환영합니다.

사용자의견을보내시려면 http://docs.sun.com을방문하여의견보내기를누릅니다.온라인양식에서문서제목과부품번호를기입해주십시오.부품번호는해당설명서의제목페이지나문서맨위에있으며일반적으로 7자리또는 9자리숫자입니다.예를들어,이설명서의제목은릴리스노트이며부품번호는 821-1515-10입니다.

Sun의추가자원다음인터넷사이트에서유용한 Sun GlassFish관련정보를찾을수있습니다.

■ 설명서

http://docs.sun.com/prod/java.sys

■ 전문가서비스

http://www.sun.com/service/sunps/sunone

■ 소프트웨어제품및서비스

http://www.sun.com/software

■ 소프트웨어지원서비스

http://www.sun.com/service/sunone/software

■ 지원및기술자료

http://www.sun.com/service/support/software

■ Sun지원및교육서비스

Sun의추가자원

1장 • 릴리스노트 53

Page 54: SunGlassFishMessageQueue 4.4 업데이트 1릴리스노트 · C컴파일러및호환C++ 런타임라이브러리 MessageQueueC 클라이언트 Solaris:SunStudio,버전12이상,표준모드및C

http://training.sun.com

■ 컨설팅및전문가서비스

http://www.sun.com/service/sunps/sunone

■ 개발자정보

http://developers.sun.com

■ Sun개발자지원서비스http://www.sun.com/developers/support

■ 소프트웨어교육

http://www.sun.com/software/training

Sun의추가자원

Sun GlassFish Message Queue 4.4업데이트 1릴리스노트 • 2009년 12월54