본문 바로가기

분류 전체보기1527

개발_JDK_LINE의 OpenJDK 적용기: 호환성 확인부터 주의 사항까지 2018년 오라클의 라이선스 체계가 변경되면서 2019년 1월 이후 더 이상 무료로 Oracle JDK를 사용할 수 없게 되었습니다. 이에 LINE 내부에서는 사전에 OpenJDK를 적용하기 위해 필요한 사항이나 검토 항목을 정리하기 위하여 TF(task force)를 구성하였고, 진행된 내용과 사용된 기술적인 사항들을 정리하고자 이 글을 작성하게 되었습니다. 시작하기 전에 본격적인 이야기를 시작하기 전에 OpenJDK를 검토하면서 느낀 부분이 있어 옛날 옛적 이야기를 적어봅니다. 2000년 초반만 해도 OSS(Open Source Software)의 신뢰도에 대한 평가는 극과 극이었고, 공공 기관이나 큰 규모의 사업장에서 실제 OSS를 적용하기에는 쉽지 않은 시기였습니다. 예를 들어 Apache HTT.. 2022. 11. 9.
용어_TF TF 뜻은 태스크포스다 ​ 세상의 모든 조직은 각각의 부서마다 하는 일이 정해져 있습니다. 하지만 어떤 특별한 경우가 생겨서 이런 식으로 일을 할 수가 없을 때는 어떨까요? 그래서 생긴 것이 "특별팀"입니다. 우선 말의 뜻을 설명한 다음에 어떤 경우에 이것이 필요한지 이해해봅시다. 'TF' 뜻은 영어인 "Task Force"의 약자입니다. 사전에서는 "어떤 과제를 성취하기 위해 필요한 전문가들로 구성되고 기한이 정해진 임시조직"이라고 되어 있습니다. (TF란 군대에서 온 말이다 [TF 뜻 유래 TF팀이란 뜻 TFT 태스크포스 뜻] / ⓒ skeeze) 그럼 '태스크 포스' 뜻은 무엇일까요? Task 뜻은 "과제, 일"이란 의미이고, Force 뜻은 "힘, 군대"라는 의미가 있습니다. Air Force(에.. 2022. 11. 7.
[작업중]개발_JDK 1.6을 상위 버전으로 올리기 리플렉션이나 deprecated 된 코드들 많이 쓰고 있었으면, 그런 것들 많이 고쳐야 될 겁니다. 그리고 collection 내부 구현이 달라져서, 예를 들자면 HashMap에 넣었다 나온 목록이 다르게 나오는 문제가 있을수 있습니다. 아직도 iBatis 이런 것 쓰고 있다면 이것도 좀 MyBatis로 바꾸고... 아마 JVM 내부 코드를 많이 안쓰는 프로그램이면 JVM 올려서 문제될 가능성은 별로 없고요. 물론 목적은 19c를 사용하기 위함인데 최소 jdk 가 1.8 로 ojbc 8 을 사용할 수 있더라구요 동작한다고 해도 memory leak 가 발생할 수 있으므로 장시간 테스트가 필요합니다 우선 Spring 3는 Java 8을 지원하지 않습니다. 결국 스프링 4로 버전을 올려야할텐데 의존하는 라이.. 2022. 11. 6.
개발_java_java6 java7 문제 개요 kth 내부 서비스 또는 kt 용역 서비스 중 상당수는 호환성이라는 명목 하에 java6 / java7 로 개발/유지보수하는 프로젝트들이 많이 있습니다. 물론 java6 / java7 로 개발한다고 잘 돌던 서비스가 당장 멈추거나 하는 일은 없을겁니다만 서비스 품질은 다음과 같은 측면에서 경쟁사에 뒤쳐진다고 보시면 됩니다. 1) 보안 2) 가용성 3) 호환성 4) 기술 역량 보안 oracle java6 의 End of Public Update 는 2013년 2월, java7은 2015년 4월에 종료되었습니다. 무슨 말인고 하면, 누군가가 java의 새로운 보안 결함을 발견한다면 java6 / java7 로 개발된 서비스는 더이상 보안 업데이트가 없다는 뜻입니다. 다음 사이트(oracle jre 링크.. 2022. 11. 6.
개발_RPC_COM 스텁 프록시 마샬링 언마샬링 스텁 프록시 마샬링 언마샬링 참고 URL http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=50&MAEULNo=20&no=178730&ref=178713 COM객체(로컬) - proxy - 마샬링 - (네트워크) - 언마샬링 - stub - COM객체(원격) 프록시와 스텁을 이해하시려면 먼져 com을 이해 하셔야 하구, com을 이해 하시려면 가 상 함수를 이해 하셔야 합니다. 1. 가상 함수 가상 함수가 객체에 정의 의해 구현 될때 객체는 가상함수 table의 주소를 가지는 변수 를 포함 합니다. 그리고 객체 영역 밖의 부분에 가상 함수 table의 생성 됩니다. 가상 함수 table이란 현재 객체에 정의된 모든 가상 함수의 코드 주소를 저장 합니다... 2022. 11. 4.