카이제로
58
2019-06-05 15:58:03
21
1037

스프링부트를 executable jar로 배포하는게 이상한가요?


회사 내에서 서버를 담당하고 있는데

저보다 선임인 개발자분께서

내장 톰캣이 달린 모양새가

'APM Setup이랑 비슷한거 아니냐.. 어디 회사에서 그딴식으로 배포하냐..'

라고 하셔서.. 너무 당황스럽습니다.

여태 이렇게 사용했는데.. 이제와서 AWS에 톰캣분리하고 서버 환경 재구성하려면 또 시간잡아 먹을텐데

현업에서는 이렇게 사용하면 안되는건가요?

답답한 마음에 글 써봅니다. ㅠㅠ


0
0
  • 댓글 21

  • sacredshine
    146
    2019-06-05 15:59:25

    그렇게 사용하자고 나온게 스프링부트입니다.

    0
  • 한판만
    432
    2019-06-05 16:03:41
    그딴식으로 배포하냐는데 외장으로 쓰나 내장으로 쓰나 똑같이 WAS 돌아가는건데 문제가 되나요?
    0
  • 카이제로
    58
    2019-06-05 16:17:00 작성 2019-06-05 16:17:36 수정됨

    한판만

    서버를 쓸거면 각각 분리해서 Apache + PHP 환경에서도 각각 설치해서 각각 환경설정하듯이..

    이것도 톰캣 따로 서버 따로 환경 설정해야 한다는식으로 얘기를 해서.. 많이 당황스럽네요.

    전에 회사에서 APM Setup 쓰던 사람 짤랐었다고 하면서..

    0
  • ONLINE
    329
    2019-06-05 16:17:10 작성 2019-06-05 16:18:41 수정됨

    일단 글쓴이 분 말씀대로 스프링부트는 그렇게 쓰라고 만든게 맞습니다만, 이 문제는 옳고 그름을 따질 문제가 아니라 회사 프로세스의 문제이기 때문에 배포하기 전에 선임분과 어떤 방식으로 배포를 하면 될지 대화를 먼저 했어야 하지 않았나 싶습니다.  내가 옳다 상대방이 나쁘다가 아니라 같이 이야기 하면서 이러 이러한 방법이 있는데 어떠시냐고 물어보고 조율을 할수 있는 문제라고 생각합니다. 선임 입장에서 그러한 배포방식을 몰랐을수도 있고 알고 있다 하더라도 회사내규라던지 기타 이유로 그렇게 배포를 하면 안되는 이유가 있을수도 있으니까요.

    0
  • 카이제로
    58
    2019-06-05 16:24:15 작성 2019-06-05 16:29:12 수정됨

    EX 

    스타트업회사라 제가 먼저 들어와서 서버를 먼저 개발해서 현재 적용된 상황이고

    선임분께선 서버 환경이 그렇게 구축된 상황에서 회사에 들어오셔서 클라이언트를 개발하시던 상황에서

    저런 말을 하신겁니다.

    제 생각에도 이건 옳고 그름을 따질 문제가 아니라고 생각합니다만 선임께선 이렇게 하면 안된다고 표현하셔서 당황스러운겁니다.

    이러이러한 방법이 있다. 라는 걸 들으시려고 하진 않으시고 그냥 본문에 써있는 것처럼

    이게 APM Setup이랑 비슷한거라고 표현하시면서 쓰지말라고 하시니 당황스럽습니다.

    참고로 그 분께선 무언가 라이브러리를 쓰는것을 엄청 싫어하십니다.

    개발하면서 JSON 파싱하는 것도 gson이나 그런걸 쓰는걸 싫어하시고 java 기본 제공 함수를 쓰시고

    클라이언트가 retrofit으로 통신하던걸 다 HttpRequest로 다 고쳐놓으셨을 정도니까요..

    같이 대화하다보면 라이브러리 쓰지 마란 소리를 자주 하곤 하십니다.

    0
  • 한판만
    432
    2019-06-05 16:27:49

    그럼 왜 이런 환경으로 사용하면 안되는지 이해를 시켜야하는데 이해를 시키지 않았으니 그 분이 잘못인거네요.


    타당한 논리로 이런 배포 운영 방식은 현재 서비스에 맞지 않다가 아니라 내가 지금껏 살아오면서 겪어봤는데 그건 그냥 아니다 일지도 모르니까요.

    0
  • ONLINE
    329
    2019-06-05 16:28:21 작성 2019-06-05 16:30:23 수정됨
    선임분이 뭔가 확신에 찬 이유가 있어 보입니다. 그 이유가 타당한지 아닌지  한번 겸손하게 물어보시는게 좋을것 같습니다. 참고로, 제가 선임분 편을 드는것은 아닙니다. 그냥 서로 트러블 일어나지 않고 가장 원만하게 해결할 수 있는 방법이라 생각해서 말씀 드린것입니다. 대한민국 사회에서는 나이/서열 에 민감하니까 그냥 후임분 께서 져 주시는게 좋을것 같네요 ㅎㅎ;
    0
  • 하루가이틀같아
    398
    2019-06-05 16:29:23

    어디회사라 함은...

    제가 다녔던 곳이 그렇게 배포를 했었습니다만...ㅠㅠㅠㅠㅠ

    아무런 문제가 없었던걸요.......


    일단 회사 프로세스를 따라가는것이 맞을거같네요 ㅠㅠㅠ


    0
  • ONLINE
    329
    2019-06-05 16:33:17

    그리고 한가지 조언을 드리자면, 대한민국에서는 회사일을 할때 선임분 비위를 맞춰줄수 밖에 없을것 같습니다. 그렇지 않으면 두고두고 트러블이 생겨날 확률이 높습니다. 그냥 본인 스스로 그게 잘못 됬다는 것을 자각하고 있으면 됩니다. 그분들은 왠만 해선 설득해서 마음을 돌릴수 없기 때문입니다. 설득할 자신이 있다면 하셔도 상관 없습니다만, 그 선임분이 자존심이 세신 분이라면 절때 마음을 굽히지 않을 겁니다. 

    1
  • LichKing
    14k
    2019-06-05 16:54:02

    열심히 jar배포하고있습니다

    0
  • 스트라
    252
    2019-06-05 16:54:24

    그분 혹시 01010101010111010 이렇게 코딩하시나요? 

    0
  • zepinos
    18k
    2019-06-05 17:01:23

    https://zepinos.tistory.com/51


    제가 3부작으로 쓴 블로그 글 중 3번째 글인데...마지막에 적은 문장이 이 경우에 딱 들어맞을 것 같네요.

    2
  • aimhigh
    287
    2019-06-05 18:49:31 작성 2019-06-05 18:50:39 수정됨

    으아 외부라이브러리 쓰면 안된다니.. 요즘 세상에 누가 그렇게 작업하나요..; 다른 사람이 짠 코드는 못믿겠다 내가 직접 짜겠다 라는 독불장군 마인드이신거 같은데..;  라이브러리도 안정화버전 쓰면 안전하고 개발시간도 얼마나 단축되는지 좀 배워가셨으면

    0
  • aimhigh
    287
    2019-06-05 18:50:07
    대놓고 척질 생각이시면 대놓고 말하세요. 외부라이브러리 쓰지말라면서 자바는 왜 쓰시냐고. 직접 언어하나 만들어서 쓰시라고.
    0
  • 즈루시
    11k
    2019-06-05 20:43:33

    임베디드 톰캣에 한해서는 이상하다고 생각해요

    WAS 관리하는 인프라 그룹이 있을텐데 티어 분리가 안되어있음 차후 변경소지가 있을때마다 패키징 해야되잖아요.

    유지보수하다보면 보안이슈로 인해 변경건이 종종 발생하는데 책임 소지가 개발롤로 들어가버릴듯...

    0
  •  (づ。◕ ܫ ◕。)づ
    4k
    2019-06-05 22:44:12
    어디 회사에서 그딴식으로 배포중...
    스프링 부트가 아니면 몰라도
    0
  • 아노미7
    99
    2019-06-05 23:32:29 작성 2019-06-05 23:36:01 수정됨

    정확히 제가 알기로는 우리나라에서는 11번가, 외국에서는 넷플릭스가 그딴식으로 배포하죠. 전에 세미나에서 11번가 개발자분이 내장톰캣이 처음에는 생소해도 성능상 차이는 없었다고 말씀하시더라고요. 제가 경험한 바로도 스프링 부트 프로퍼티 파일로 was 설정을 할 수 있어서 간편하고 좋았습니다. 

    0
  • JohnMark
    332
    2019-06-05 23:37:17
    네 그런 형태로 서비스 운영 매우 잘하고 있습니다. 
    스프링부트의 내장 톰캣 성능은 외장과 다를게 없습니다. 
    똑같습니다. 선임분이 매우 사고가 예전 상태에 머무르고 계시네요...ㅋㅋㅋ

    참 할말은 많은데.. 하질 못하겠군요.. 힘내세요.. 선임분 말은 잘 걸러들으시고...
    0
  • 아노미7
    99
    2019-06-05 23:38:49

    외부라이브러리에 관해서는 어느정도 이해가 가기는 합니다. 경우에 따라서는 라이브러리 사용법을 익히는 것보다 그냥 내가 구현하는게 머리가 덜 아프기는 하죠..하지만 현업에서 그런식으로 일을 하는건 아닌거같네요. 

    0
  • 허허실실
    486
    2019-06-07 10:44:01

    springboot 배포방식은 그게 맞고 내장 tomcat 의 성능도 이미 검증이 되어

    개발자입자에서는 전혀 문제가 안됩니다.


    문제는 회사 프로세스가 그걸 허용하느냐 안하느냐의 문제입니다.

    즈루시// 님 말씀처럼 인프라팀에서 WAS를 관리하는 구조라면 

    application과 WAS 는 분리되어 설치 및 배포가 되어야 하는게 맞습니다.

    0
  • 초무쿤
    2k
    2019-06-08 04:52:20 작성 2019-06-08 05:05:11 수정됨

    그냥 무시하시는게..ㅋㅋ

    화면까지 있으면 apache + mod_jk + tomcat으로 가야한다고 주장할 기세군요..

    그냥 옛날 마인드에 사로잡히신분인듯...

    보통 예전 아키텍쳐 고수하시는 분들의 특징이 왜 그런 아키텍쳐일수 밖에 없었는지.

    그상황을 전혀 이해 못하시는 분들이 대부분일겁니다.

    현재는 그런 제약사항들이 모두 해결됬슴에도 불구하구요.

    요즘은 servlet 3.0스펙때문에 더군다나 외장 tomcat을 사용할일이 별루 없죠.

    jsp도 jar에 포함하면 되니깐요.

    물론 신기술을 도입할때는 신중해야겠지만..(보편적인지 지속가능한지를 봐야겠지만..)

    이미 안정화+보편화된 기술을 적용하는걸 꺼려한다면

    회사도 발전이 없고 개발자는 더더욱 발전이 없을거 같은데....

    보통 그런 상황이 장기간 지속되면 괜찮은 개발자는 떠나고 회사는 구려지더군요..



    0
  • 로그인을 하시면 댓글을 등록할 수 있습니다.