'분류 전체보기'에 해당되는 글 895건

  1. 2017.03.03 회사
  2. 2017.02.20 2017년 새로운 봄을 기다리며
  3. 2016.12.15 가을과 겨울 사이...
  4. 2016.11.22 BoneCP DB Pooling
  5. 2016.09.24 UPSERT ? INSERT ON DUPLICATE KEY UPDATE
  6. 2016.08.18 2016년 여름 ( 세번째 여름 )
  7. 2016.08.12 PA에서 집 사기
  8. 2016.06.16 Scala 2
  9. 2016.06.04 세살 즈음에
  10. 2016.03.26 파일 정보로 옵션 읽어 오기.

처음에 미국에 와서는 회식 문화가 없어서 좋기도 하고 심심하기도 했는데 

AppNexus로 오게 되면서는 분기별로 팀 회식을 가지게 되었다.


분기별로 나는 괜 찮은 음식들을 즐겨서 좋기는 한데 식구들한테는 좀 미안한 마음도..

그래서 새로 알게 된 괜찮은 음식점은 식구들하고도 함께 가려고 해본다... ( 뭐.. 식당들이 뉴욕이니 여기서는 좀 어렵지만. ) 


작년 여름에 인턴으로 일하던 친구가 정식으로 조인하게 되면서 

이번 분기는 두 번째 팀 회식을 하게 되었다.


뭐. 어디로 가게 되려나 했는데, 이번엔 Korean BBQ를 먹으로 가자면서 코리아타운의 종로상회로 가게 되었다.

오랜만에 느껴보는 한국 고깃집 분위기 ( 미국와선 식당들이 좀 비싸서 고기집을 잘 안가게 되었다.) 에 

미국 와서 가장 오랫동안 한국 가요 ( 그것도 내가 좋아하는 옛날 가요 ) 를 2시간 넘게 듣다 보니 참 낮선 느낌이었다.


삽겹살, 모듬 소고기, 육회 등을 시켜 먹었는데 

미국 친구들 입맛에는 소 갈비가 제일 맛있었단다.


난... 입이 싼 맛인지 삼겹살이 아직 좋은데..



고기 회식을 한 후 종로상회 맞은편에 있는 커피숍에서 팥빙수로 마무리...

참고로 내 옆에 있는 중국인 친구가 팀장인데

나름 일도 열심히 하고 관리도 열심히 하고..


뭐.. 전체적으로 같이 일하는 친구들이 실력도 좋고 성격들도 좋아서 맘에 드는 편이다.


회식이 있었던 주 금요일..

아침에 출근 준비 하면서 낮 온도가 화씨 70도 정도 ( 아마 한 섭씨 20도 정도 ) 될꺼라는 예보를 보고 

2월 말에 이게 무슨 일인가 했는데 


오전에 일을 좀 하다 보니 이상한 메일이 와 있다.


It is "no change Friday" and the weather is going to be great so... 


내용을 읽어 보니... 날씨 좋고 오늘은 시스템 변경 안하는 금요일 이니 다들 오전 근무만 하고 좋은 날씨 즐기란다. ( 집에 가라고.. ) 

한국에 있을 때, 어느 회사 개발팀장이 

날씨 좋으니깐 다들 나가 놀고 일은 자기가 하겠다는 

얘기 들은 이후로 처음 들어보는 얘기 



덕분에 우리 율이는 Mondauk 공원에 가서 좋아하는 모래 놀이를 원 없이 하였다.


미국 와서 본의아니게 여러 회사를 다니게 됐는데 

( 여기서 함정은 나는 옮기지 않고.. 회사가 분사.. 합병.. 인수 이런일을 겪었다. ) 

아직 까진 지금 회사가 제일 합리적이고 직원들한테도 잘 해 주는 것 같다.

물론 배움의 기회가 많은 것도 우리 회사가 맘에 드는 점 중에 하나이다...

'사는이야기 > 미국생활' 카테고리의 다른 글

Sweet home...1년  (0) 2017.10.01
뉴욕에서 친구 만나기  (0) 2017.08.15
PA에서 집 사기  (0) 2016.08.12
한국에서 미국 송금 하기  (0) 2015.12.07
뉴스룸, 9/11 , 빈 라덴  (0) 2014.07.01
Posted by headiron
,

새로운 집을 산 이후로 IKEA에 가는 게 이제는 일상이 되어 버린 것 같다.

하긴 처음에 미국와서 몇 달 동안 거의 매일 갔던 거에 비하면야..


언제나 IKEA에 가게 되면 율이는 IKEA 아이스크림이라는 선물을 받고, 

놀이터에서 놀기도 하고 하니 오히려 반겨하는 눈치다.

Winter brake동안 플로리다를 가볼까 하다가 80도 정도 밖에 안되서 어렵겠다 싶어서 그냥 근처에 있는 곳들을 돌아 다니기로.. ( 같은 팀의 플로리다 출신 Erik에게 물어보니 남부 플로리다는 겨울에도 해변에서 놀 수 있단가.. :-( ) 

그 첫번째로 율이가 좋아하는 Creyola Experience.

그냥 가기만 하기 그래서 근처 맞집을 찾아가 Brunch를 즐기며 한 컷..

저 식탁에 있는 French Toast 가 우리를 요즘 동네 Brunch 가게 탐방에 나서게 만들었다.


지난 번에 왔을 때는 없었는데... 

크레용으로 색칠한 새들이 춤추는 장치..

나름 새로운 것들도 많이 생겼고..

평일에 오다보니 율이가 좋아하는 Play ground에도 아이들이 적어서 마음껏 놀 수 있었다.

뭐.. 우리도 Easton Farmers Market에서 맛있는 음식이랑 커피도 즐기고 했으니 우리 가족 모두 행복했던 날이 었다고나 할까.




뭐.. 우리 가족에게는 빠질 수 없는 Longwood Garden..

특히나 요번에는 크리스마스 이브를 즐겼다.




집에 굴뚝이 생겼으니 산타할아버지가 선물도 주셨네... :-)


동네에 있는 Kid 카페에도 한번..

나름 괜찮은 것 같은데 집사람은 좀.. :-(

작년에 알게 되어 자주  가게된  Japaneses Grossory store인  Maido에서 마침 떡 만드는 행사가 있길 래 율이도 한번..

난 민속촌도 한번 안 가봐서 떡 매 치는 건 한 번도 안해 봤는데 율이는 아빠보다 먼저 이런 걸 해보네...

잠시 애플 매장에 가서 내 볼일마치고 

다시 Maido에 와서 우동에 저녁 먹고..

마스코트 같은 곰돌이 인형과 함께...

새해 맞이 불꽃 놀이 가려고 하는데 

마침 리딩 터미널 마켓에  율이가 좋아하는 모형 Train을 설치 해 놓았다고 해서 

맛있는 것도 먹고.... 모형 기차 구경도 하고..

뭐.. 리딩 터미널 마켓이 기차역에서 출발했으니 나름 괜찮은 아이디어 인듯 하다.

 


2017년도  온 식구가 필리 다운타운에 불꽃 놀이를 보며 맞이하였다. 

( 물론 우리는 6시에 하는 불꽃 놀이를 즐겼다. ) 

이사 하고 처음 눈 다운 눈이 왔을 때 .

나름 1인치 정도 왔기에 눈 삽들고 치웠는데 

오후 되니 바로 녹아 버렸다는... 

어쩐지 다른 사람들은 그냥 나두더라니....

친구네 분식점에서 사장님이 서비스로 주신 핫도그 먹으면서 옛 생각이 나서 

냉동 핫도그를 샀었는데 

율이가 귀신 같이 기억하고 엄마를 졸라서 먹었단다..

먹는거 잘 기억하는 건 정말 날 닮은 듯..


햇볕이 있어서 밖에서 놀고 있는데.

마침 Patio 의 응달 진 곳에 살짝 얼음 언것을 보고 

자기는 스케이트를 탄단다.

아직 한번도 해본적은 없는데 

TV 쇼에서 본적이 있어서 어떤건지는 대충 아는 듯..

나는 이런 생각 못하는데..

아직 마인드가 열려 있는 율이가 부럽고 대견하고...

한 달에 한번씩 YMCA에서 하는 Family Fun night.

처음 참석해 보았는데 

포켓몬도 잡고, 그림도 그리고 다양한 행사를 하길래 .

괜찮아서 다음달에도 갔는데 주제만 다르고 하는 내용은 거의 비슷..


그래도 율이가 좋아해서 다음달에도 또 가게 될 듯. 



결혼 하고 처음으로 사본 내 생일 케잌.

뭐.. 내가 운전해서 가서 사오기 뻘쭘해서 안 했었는데 

율이가 워낙 케잌을 좋아해서 한 번 사보았다.

결국 나중에 나 먹으라고 한 조각 남겨주고.. 

율이가 일주일 내내 즐겼다나.. :-) 

힘들다고 해서 결국 또 목마탄 율이..

나름 아빠 생일인데.. :-(


일요일 브런치를 즐기러 간 New Hope에 

아이들 놀이터가 있어서 회전 목마도 같이 타보고...

같은 팀의 Dawid이라는 친구가 포켓몬을 좋아해서 

회사에 인형들을 많이 사서 빈 자리에 두고 있었는데 

이번에 새로운 친구가 들어오게 되서 그 자리를 치워야 핟다고 하길래

나름 귀여워 보이는 인형들로 집에 가져왔다. 

율이한테는 인형을 잘 안 사 줬었는데 이렇게 좋아 하네...

동네 친구 아영이, 윤아 자매랑 몽고메리몰 놀이터 가서 한 컷..

올 겨울 마지막으로 온 폭설이 온후 같이 눈을 치우며..

6인치 정도왔는데... 옆에옆 집의 Tom아저씨가 Snow Blower로 많이 치워주셔서 비교적 쉽게 치울 수 있었다.

마침 눈 치우러 나온 옆집 아줌마랑 인사도 하고 ..


얼마전 GroundHog Day때  6 more week이라고 했는데 

아직 2월 19일인데 벌써 60도 가까이 기온이 올라 버렸다.

올해도 GroundHog의 예측은 틀린 것 같은데 기분이 나쁘지 만은 않다.


덕분에 율이도 President Day Long weekend동안 Mondauk, Everybody's Playgound에서 하루 3~4시간씩 놀며 

그동안 못 푼 에너지를 마음껏 발산했다.


우리 율이는 새로운 집에서 

새롭게 맞이하는 봄을 기다리며 행복하게 잘 자라고 있다. .. ( 그렇지 율아 :-) ) 


'사는이야기 > Claire' 카테고리의 다른 글

Summer Camp  (0) 2017.08.21
4살..  (0) 2017.05.23
가을과 겨울 사이...  (0) 2016.12.15
2016년 여름 ( 세번째 여름 )  (0) 2016.08.18
세살 즈음에  (0) 2016.06.04
Posted by headiron
,



6개월에 한 번씩 가는 치과. 

불 빛 때문에 눈이 부실까 선글라스(?)를 씌워졌기에 한번 



012345

암만해도 집을 사게 되니 IKEA갈일이 많아 졌다.

좀 큰 가구를 주문하고 기다리는데 율이가 아이스크림 너무 맛있게 먹길래 상황극을 한 번..

우리 율이는 착해서 맛 있는 것도 잘 나눠줘요. :-)





할로윈 날 한국 교회에서 잔득 받아온 사탕을 즐기는 율이.

한국 교회들은 유독 할로윈 때 교회에서 별도의 행사를 하는데 

이웃집에서 같이 가자고 해서 갔다가 사탕을 잔득 받아 왔단다.

사실 이빨 상할까봐 안주고 있었는데 율이는 처음으로 사탕의 맛도 알게 되었다.

이웃 집 아기들과 놀고 있는 율이 

그동안 혼자 지내서 사회성이 걱정이었는데,

 친구가 생기니 다른 문제들이 걱정이 된다.



Fireplace 가 생기면 군 고구마 구워먹어야지 생각했었는데 아직까지 한 번도 사용하지 않고 있다.

내가 뉴욕 간 사이에 찍은 사진이니 아마도 율이가 찍은 듯..

이제는 율이가 사진까지 찍을 줄 안다.




최근에 가본 Red Robin.

맥도날드 보다 좀더 고급인 햄버거 체인 인데..

내 입맛에는 다른 Pub에서 먹는 버거가 좀더 맛있는 듯.


Black Friday 때 너무 피곤해서 카트에서 잠 듯 율이...

미안하기는 한데 율이 선물 사러 나왔던 거라서... :-)


Horsham Library 에서 

그동안 많은 사람들에게 추천을 받았던 곳인데 이제서야 가보게 되었다.

처음 가는 곳 인데도 율이 생각해서 도전해 보는 집사람이 대견해보였다.








매년 가는 Longwood Garden 크리스마스 장식.

크리스마스때는 트리 장식 보려고 온실에는 잘 안 들어 오는데 

율이가 꽃 보고 싶다고 해서 들어왔더니 실내도 정말 잘 해 놓았다.

덕분에 시간이 부족해서 실외 트리 장식을 못 보았지만, 크리스마스 이브때 다시 한 번 오리로...

Longwood Garden 입구에 직원이 불을 피워놓았기에 그 앞에서 한 컷.

생각해보니 이런 불을 직접 본 게 대학교때 캠프파이어 한 이후로는 처음 인 듯.

율이는 처음 보는 불인데 다행히 무서워 하지는 않았다.




여느 해 처럼 송년회 다음날 식구들과 하루 동안의 뉴욕 여행을 했다.

올해는 갑자기 날씨가 추워진 관계로 박물관을 가기로 하고 벼르고 벼르던 자연사 박물관에 가보았다.

테어도어 루즈벨트 동상 옆에서 

가만 보니 정말 로빈 윌리엄스를 좀 닮으신 듯.






덤덤.... 

사실 별 문에 띄는 것은 아닌데 영화에 한 번 나오다 보니..


역시 영화에 나와서 인지.. 공룡 앞 자리에서 사진 찍기는 조금 어려웠다.

'사는이야기 > Claire' 카테고리의 다른 글

4살..  (0) 2017.05.23
2017년 새로운 봄을 기다리며  (0) 2017.02.20
2016년 여름 ( 세번째 여름 )  (0) 2016.08.18
세살 즈음에  (0) 2016.06.04
2년 겨울  (0) 2016.02.09
Posted by headiron
,

BoneCP DB Pooling

개발자세상 2016. 11. 22. 07:33

아침에 출근한 이후에 우리 팀의 Fireglass ( Play 2.3 ) App때문에 DB Connection 이슈가 발생했다가 이 부분을 Fix해 달라는 요청이 왔다.


Connection관련해서 FG팀에서 권장(?) 했던 기본 설정을 사용했었는데 마침 Skinny ORM의 Cross DB access 이슈로 인해서 사용되는 Database개수 만큼 Connection을 생성하고 4 Host가 돌아 가다 보니 이슈가 발생한듯 했다.


일단 

        driver = com.mysql.jdbc.Driver

        url = "jdbc:mysql://DBHOST:3306/api?autoReconnect=true"

        user = "DB_USER"

        password = "DB_PASSWORD"

        connectionTestStatement = "/* ping */ select 1"

        idleConnectionTestPeriod = 1 minute

        idleMaxAge = 10 minute

        connectionTimeout = 20000

        partitionCount = 2

        minConnectionsPerPartition = 2

        maxConnectionsPerPartition = 5


이런 설정을 DB 개수 마다 했더니 한 Host에서 16 개의 DB Poolling이 계속 가지고 있었던 것이다.

참고로 우리는 4개 Host를 가지고 있었으니 16 * 4 = 64 개의  DB Connection이 그냥 이유없이 낭비 되고 있었던 것 ..


일단 원인은 알고 있으니 우선 partitionCount를 1로 줄이고, minConnectionsPerPartition을 1로 줄여서 테스트를 해 보았는데 Pool당 Connection이 하나가 아닌 둘이 Initial되는 것이다...


이것 저것 해 보다 maxConnectionsPerPartition 도 아래와 같이 1로 해보니, 그제서야  1개의  Connection만 생긴다.


        partitionCount = 1

        minConnectionsPerPartition = 1

        maxConnectionsPerPartition = 1


근데 이렇게 되면 Traffic이 많아 져서 Connection이 더 필요할 때 문제가 생길 소지가 다분하다.

뭐.. 이거 두고 왈과왈부 하고 있느데 , John이 "maxConnectionAge = 15 minutes"를 넣어 달라고 하면서 이 구문이 이유없이 생겨 있는 Connection 을 Clean up시켜 준다고 한다.

그래서 해보니 처음 Initial할때 일단 2개의 Connection이 생성되지만, 15분이 지나자 Config내용대로 하나의 Connection만 남고 다른 하나는 Clean up되어 버렸다.

        driver = com.mysql.jdbc.Driver

        url = "jdbc:mysql://DBHOST:3306/api?autoReconnect=true"

        user = "DB_USER"

        password = "DB_PASSWORD"

        connectionTestStatement = "/* ping */ select 1"

        idleConnectionTestPeriod = 1 minute

        idleMaxAge = 10 minute

        maxConnectionAge = 15 minutes

        connectionTimeout = 20000

        partitionCount = 1

        minConnectionsPerPartition = 1

        maxConnectionsPerPartition = 10


조금 이상하게 돌아가기는 하는데 어쨋든 원하는 해결책은 찾은 듯 싶다.

그나저나 Play 2.4이후로는 HikariCP라고 좀더 향상된 DB Pooling을 쓴다고 하는데 언제 시간 될떄 한 번 Upgrade를 해 봐야 할 듯 싶다.

'개발자세상' 카테고리의 다른 글

Mobile세상 ....  (0) 2017.06.03
JavaScript polling  (0) 2017.03.17
Rotating Linux Log file  (0) 2016.03.10
Continuous Integration with Jenkins  (0) 2016.03.04
Hibernate interceptor  (0) 2015.05.20
Posted by headiron
,

Console API 쪽으로 넘어 오고 나서 조금 낮설었던 단어 중에 하나가 UPSERT였다.


OAS의 경우는 데이터를 Delete할 경우에 데이터 자체를 없애는 반면 Console의 경우는 deleted field를 '1'로 Setting하여 데이터 자체를 남겨 두었다. 그리고 같은 이름의 데이터가 들어 오게 될 경우 기존 데이터의  deleted field를 '0'로 Flip하여서 재 사용 하는 방식인 것이다.


기본적인 Idea는 괜찮았는데, 문제는 어떻게 구현되어 있는지 모른다는 것이었다.

암만해도 Console API자체가 Framework화 되어 있고, 

Model Configuration하면 자동으로 API가 생성되니 내부적으로 그냥 구현하나 보다 하고 생각하고 있었다.


근데 최근에 API에 데이터를 입력하는데 오류가 발생한다는 Issue를 Follow up하다 보니 API Framework내부에서 MariaDB의 INSERT ON DUPLICATE KEY UPDATE 구문을 사용하는 걸 발견하였다.


https://mariadb.com/kb/en/mariadb/insert-on-duplicate-key-update/


INSERT INTO ...

ON DUPLICATE KEY UPDATE

  col=expr ....


DUPLICATE CHECK 대상은 Unique Index가 생성된 Field에 대해서다. 따라서 PK도 포함된다는.

괜찮은 기능인데 Oracle에서는 보았던 기억이 없다.


뭐.. Oracle이 이런 세세한 부분에서 조금 기능이 부족한 부분이 있으니깐 뭐..


참고로 Console API에서 발생했던 이슈는..

Facebook Mapping관련 테이블인데 

다른 테이블과 달리 Facebook Account ID를 PK로 두고 , brand, member를 Unique로 두고 있는데  

( 보통 Console은 Incremental Id를 PK로 사용하는데 대체 누가 이런 테이블 구조를 만들었는지..)

PI팀에서 기존 매핑을 지우고 새로운 Account Id를 brand, member 에 Mapping하고 싶었는데 

(brand, member) 의 Unique index때문에 새로운 row를 생성하지 않고 기존 데이터의 deleted column을 0으로 Filp하는 방식으로 처리되서 문제가 발생한 것이었다.

( API Framework내부에서 PK관련 FIELD들을 ON DUPLICATE KEY UPDATE clause에서 빼버리기 때문인데 뭐  reasonable하긴 한데 이런 부분에서 좀 문제가 생길 수 밖에 없었다. )

Facebook의 AdNetwork사업을 11월에 접기로 했으니 

Code수정 없이 그냥 DBA에게 해당 PK를 업데이터 하는 Query를 실행하도록 하여 이슈를 해결하도록 했다.

'개발자세상 > Database관련' 카테고리의 다른 글

Open Cursor issue  (0) 2014.10.25
listagg function and ORA-01489  (0) 2014.01.09
Oracle TEMP 파일 삭제  (0) 2013.09.23
오라클 DB에서 테이블마다 용량 구하기  (0) 2013.08.10
Overlap 데이터 구하기  (0) 2013.08.04
Posted by headiron
,

처음 해본 딸기피킹.

집 근처에도 있지만 회사 동료가 추천 해준 1시간 정도 거리에 가서 해 보았다.

재밌고 신기하기는 한데, 앉아서 따다 보니 조금 힘들긴하다.

하지만 율이는 자기 키 높이에 있어서 인지 재밌어 했다.

가을에는 사과 피킹도 할까 했는데 아마도 올해는 조금 힘들지 않을까 싶다.

집에서 율이와 셀카 찍기 놀이

가끔 가는 마이도에서 음식 기다리며... 

곰 인형은 거기 있는거..

올해도 어김없이 동네 카니발... 

작년에는 놀이 기구 몇 개 탈 수 없었는데..올해는 작년보다 더 많은 기구를 탈 수 있었다.

아마도 내년에는 대 부분의 기구를 탈 수 있을 듯 하다. 

오랜만에 맛보는 Funnel Cake과 처음 맛보는 솜 사탕.

초여름에 즐겨보는 동네 수영장..

누에고치 돌이도 해보고...

동네 iHop에 식사 하러 갔더니 풍선으로 인형만들어 주는 아저씨가 있었다.

율이 한테 꽃 만들어 주셨는데... 우리 엄마는 외계인에 꼳히셨다는..


회사 Field Day에 처음 해보는 Face painting

회사 Summer Friday를 맞이하여 가본 뉴저지 해변.

휴가 내서 2박 3일로 가보니 좀더 여유 있게 즐길 수 있었다.

마눌님은 뉴저지 해변이 파도도 쌔고 좀더 좋은 곳에 가보고 싶다고 하지만 그래도 가까운 곳에 해변이 있는 우리 동네가 좋다.


올 여름은 많이 즐기지 못했지만 내년에는 좀더 즐거운 여름을 보내보고 싶다.

'사는이야기 > Claire' 카테고리의 다른 글

2017년 새로운 봄을 기다리며  (0) 2017.02.20
가을과 겨울 사이...  (0) 2016.12.15
세살 즈음에  (0) 2016.06.04
2년 겨울  (0) 2016.02.09
2살 그리고 몇 개월 즈음  (0) 2015.09.11
Posted by headiron
,

6년 간의 아파트 생활을 뒤로 하고 드디어 내 이름으로 등록된 집을 사게 되었다.


여기저기서 많은 정보를 보긴 했지만, 혹시라도 내 뒤로 집을 사게 될 사람을 위해서 진행 내용을 한 번 정리해 보기로 했다.


0. Down pay 송금

   - 미국에서 충분히 돈을 가지고 있다면 모르겠지만 아마도 대부분의 한인들은 한국에서 돈을 가져와야 할 것이다.

   - 주택 구매등을 목적으로 목돈을 한국에서 돈을 송금하기 위한 방법을 찾아 보니 세가지 정도 였다.

      - 일반 무자료 송금 ( 연 $50,000 제한 ) 

      - 주택구매를 위한 송금

      - 해외동포 재산 반출 ( $100,000 까지는 무자료 송금, $100,000 이상은 국세청에서 자금 출처 확인서 필요 ) 

   - 주택 구매 송금의 경우 2년에 한 번씩 주택 소유 내용을 한국에 신고해야 하고, 주택을 판 이후에는 해당 금액을 한국에 다시 송금해야 하므로 좋은 옵션은 아닌 듯

   - 해외 동포 재산 반출의 경우 10만불 까지는 편하게 송금을 할 수 있지만, 영주권이 필요하고 10만 불 이후 금액의 경우는 국세청에서 자금 출처 확인서를 받아서 진행해야 하기때문에 지속적으로 한국에서 돈을 가져올 일이 있을 경우에도 좋은 옵션은 아니다. ( 특히나 인터넷 뱅킹으로 해외 동포 재산 반출을 지원하는 은행이 신한은행 밖에 없는 듯 싶다. ) 

   - 우리는 내가 해외동포 재산 반출로 10만불 가까운 돈을 가져오고 집사람은 일반 무자료 송금으로 나머지 금액을 가져오는 방식으로 처리했다.

   - 돈 송금을 처리한 후에 검토해본 결과 일반 무자료 송금으로 몇 년간에 걸쳐 한국에서 가져오는 게 제일 좋은 방법이라는 생각이 든다. 물론 이 돈을 주택 구매에 사용하면 안된다고 제약 사항이 명시 되어 있지만 과연 그걸 한국에서 체크할 까 싶기도 하고..그래서 이게 제일 안전한 방법인 듯 싶다. 

  

1. Agent 선정 

   - 다들 얘기 하지만 Open House가 집을 구경하는 것도 있지만, Buyer Agent를 찾을 수 있는 좋은 기회이다.

   - 우리 가족도 근 2~3년간 시간 될때마다 Open House를 갔었고, 1년 정도 만나는 Agent들을 꼼꼼히 지켜보다가 최종적으로 Keller Willams에서 일하는 Kristen이라는 Agent와 함께 하기로 했다. 재밌는건... Kristen이 지금 우리가 구매하는 Community에 살고 있어서 Agent에서 Neighbor가 될 것이라는 거.. ( 뭐..Community 가 커서 자주 보게 될지는 모르겠다. )  

2. 집 서치

   - 여러방법이 있겠지만, Agent와 일하기 전에는 Zillow ( 혹은 Redfin ) 같은 사이트에 검색 조건을 걸어 놓고 Daily Update메일을 받는 방법이 일단 좋은 것 같다.

   - 하지만 Agent와 일하게 되면 , Agent에게 원하는 조건을 얘기하면 mls 사이트의 Daily메일을 보내준다. Zillow가 나름 여러 정보들을 많이 보여주지만, 대부분의 정보가 mls 및 다른 사이트들의 정보를 가져와서 편하게 보여주는 것이기 때문에 mls가 제일 빠르고 정확한 정보일 가능성이 크다. 

  - 좋은 방법은 MLS의 Daily 메일을 통해 원하는 매물을 찾고, 상세 정보 ( 학군 - 학교 rating , Price History, Tax ) 등은 Zillow로 확인하는 게 제일 좋은 방법인듯 하다.

  - Agent와 일하게 되면 집 보기 위한 Schedule잡기가 편하기 때문에 집 구매를 심각하게 고려하게 될 때쯤은  Agent를 선정해서 함께 하는게 좋다.   

3. Pre-approval

  - Pre-approval은 말 그대로 은행에서 해당 사람에게 대출 하는 것을 Pre-approval했다는 서류이고, 집에 offer를 넣을 떄 반드시 필요하다. 뭐 Pre-approval이라고 해서 무조건 대출이 되는 건 아니라는 것.

  - 일단 한 번 Pre-approval을 받을 당시 은행에서는 조회한 Credit점수를 3개월 동안 유효한 것으로 취급하기 때문에 3개월 안에 내가 집을 살 것 같다고 하면 미리 받아 놓는 것이 좋을 수 있다.만일 3개월 이후가 되면 다시 Credit 조회가 이루어 지기 때문에 신용점수에 안 좋은 영향을 준다.

  - Pre-approval을 받을 때는 가능하면 많은 은행에서  Pre-approval을 1주 안에 받아 놓는 것이 좋다.  같은 용도로 1주일 안에 여러 Credit 조회가 이루어 지는 것은 한 건으로 신용점수 계산시 취급된다고 하고, 많은 은행에서 Pre-approval을 받아 놓는 것이 나중에 은행을 선택할때 선택의 폭을 넓혀준다.

4. Offer

  - 맘에 드는 집을 찾으면 Offer를 넣으면 된다. 보통 Offer를 넣을 때 Pre-approval을 받은 은행을 명시해 넣는 경우가 있는데 가능하면 TBD로 놓고, Pre-approval받았던 은행들에 최종 offer를 받아서 1주일 안에 결정해서 통해 해 주는 것이 좋다.

  - 우리 집의 경우는 Offer문서에 Agent가 추천한 은행이 명시되어 있기에 이 부분을 TBD로 수정해 달라고 요청하고 처리하도록 했다.

5. Inspection

  - Offer가 accept되면 보름(?) 안에 Inspecton 이 진행되어야 한다. 생각 만큼 준비 기간이 길지 않아서 Inspection 업체 알아 볼 시간이 부족해서 결국은 Agent가 추천 한 회사에서 진행했다.

  - 집을 살 생각이라면 Inspector를 미리 미리 알아 보는 것이 좋을 듯 싶다.

6.  Loan process

  - Loan이 진행되는 동안 은행에서 요청하는 서류를 잘 보내주면 된다.

  - 그리고 진행하는 중간에 혹시라도 목돈이 들어올 일이 있다면 가능하면 Loan officer랑 상의 하는 것이 좋다. 나도 한국에서 송금을 좀더 받으려고 했는데, Pre-approval할 때 이미 2달치 Bank Statement로 Down Payment 내역을 냈어도 그 뒤에 큰 돈이 움직이는 것에 대해서는 계속 증명이 필요하다고 한다.

  - 내 집을 사면서 여러 이슈 ( 특히나 한국에서의 송금 ) 가 있었는데, 집을 구매하면서 다른 사람들은 현지인이랑 함께 했지만, Loan 은 한국인 Banker랑 진행하면서 크게 도움이 되었다. 가능하면 Banker는 한국인 Banker랑 함께 하는 걸 추천한다.

  - 참고로 나는 Agent가 BOA 가 Loan Process가 느리다고 같은 경고를 주었는데도 BOA의 Lucia Lee랑 함께 했고, 대출 조건도 좋았지만 송금 문제 등 여러 문제 들에 대해서 큰 도움을 받게 되었다.

7. Closing & Move

 

집을 구매하면서 제일 도움이 되었던 글은 아래 글이었고, 미국 생활하는 정보를 얻기에는 제일 좋은 사이트 이다.

https://www.milemoa.com/bbs/board/1699572

'사는이야기 > 미국생활' 카테고리의 다른 글

뉴욕에서 친구 만나기  (0) 2017.08.15
회사  (0) 2017.03.03
한국에서 미국 송금 하기  (0) 2015.12.07
뉴스룸, 9/11 , 빈 라덴  (0) 2014.07.01
Verizon to Comcast  (0) 2013.12.02
Posted by headiron
,

Scala

개발자세상/자바세상 2016. 6. 16. 01:27

팀을 옮긴지 근 1년이 되는 시점에 드디어 Scala로 개발한 Product를 Release하게 되었다.


개발자로 경력시작하면서 의도하지 않게 asp, php를 배운이후로 새로운 언어를 배우는게 근 15년 만인듯 싶다.


1년 가까이 Scala, Play를 공부하며 매달려서 드뎌 하나를 개발했다는 자부심도 느끼지만, 아직도 Scala에 대해서 절반도 이해하지 못한 듯 싶어 너무 아쉽기도 하다.


가끔은 이렇게 어려운 언어가 왜 Popular할까 하는 생각도 하게 되는데... 내가 너무 오랫동안  OOP언어에 갇혀 있었기 때문이 아닌가도 생각된다.

아마도 예전에 Cobol로 개발하던 사람들도 Web시대로 오면서 비슷한 느낌이었을 까..


어쨋든 새로운 창 하나를 얻었다는 것이 기쁘고.. 

또 이번 Project를 하면서 얻었던 정보도 잊기 전에 기록해 두는 것이 좋을 듯 싶다.


회사의 Fireglass Framework을 사용하였지만 그 근간은 Play 2.3이다.

Fireglass에는 여러 Module들이 있는데 그 중 Moria라는 DB 모듈이 있다.

원래대로라면 DB Framework으로 이걸 사용해야 하는데, 어찌 하다 보니 다른 솔루션들을 검토하게 되었고, 그 중에  SkinnyORM을 사용하게 되었다.


http://skinny-framework.org/documentation/orm.html


Skinny Framework의 Sub framework 인데 Light weight하면서도  기능도 Powerful한 Framework이다.

ORM자체로서의 기능도 좋고, 근간이 ScalikeJDBC라는 Native SQL을 사용하기 때문에 Native Query를 사용할 수도 있다.

또 Skinny 에서 제공되는 Validator도 사용방법이 간단하면서도 쉽게 Expandable하게 되어 있어서 선택하게 되었다.


물론 MYSQL을 사용할 떄 다른 DB에 있는 TABLE을 지원하지 못하는 제약사항이 있기는 한데.. 

https://groups.google.com/forum/#!topic/skinny-framework/7zF4cQp3CLY

일단 DB만큼의 DB Pooling을 생성하고 각 Model별로 DB connection name을 overloading하는 방법으로 workaround할 수있었다.


Play와 연동은 아래 문서를 참조하면 되었다.

http://scalikejdbc.org/documentation/playframework-support.html


나는 일단 Play 2.0 ~ 2.3의 scalikejdbc-play-plugin을 이용하는 방법을 사용했는데 , 테스트를 진행하다 보니 Play의 DB config를 읽어 와서 자체 DB Pooling을 생성하여 사용하는 구조였다.

Redundant한 DB Pooling이 생기고 Play에서 설정된 DB Pool관련 Enhanced Option을 사용하지 못하는 문제가 발생했다. 특히나 Play에서 설정한 idleConnectionTestPeriod 설정을 읽지 않아서 DB Connection이 close되는 이슈가 발생했다.

이 문제는 scalikejdbc-play-dbplugin-adapter를 사용함으로써 해결이 되었다.


DB Pooling관련 이슈를 Followup하면서 발견한 사실인데 Play의 경우 2.3 에서 2.4로 넘어 가면서 DB Pooling library가 바뀌었다.

2.3에서는 BoneCP 라는 library를 사용하였는데, 2.4에서 Hikaricp로 변경이 되었다.

 BoneCP : http://www.jolbox.com

 HikariCP : https://brettwooldridge.github.io/HikariCP/


왜 바꾸었는지 보다 보니 BoneCP Framework이 Deprecate되어서 HikariCP로 넘어 가게 되었다.


일단 우리는 2.3을 사용하니 BoneCP에 맞추어 아래와 같은 Advanced Option을 사용하였다.


connectionTestStatement = "/* ping */ select 1"
idleConnectionTestPeriod = 1 minute

idleMaxAge = 10 minute
connectionTimeout = 20000
partitionCount = 2
minConnectionsPerPartition = 2
maxConnectionsPerPartition = 5
poolMaxSize = 10

다른 Option들에 대해서는 좀더 체크해 봐야 겠지만 특히나 좋은 부분은 idelConnectionTestPeriod인것 같다.

여기에 설정된 Duration에 맞추어 connection 을 테스트 하기때문에 DB 서버에서 Timeout 되어서  DB close하는 이슈를 방지할 수 있다.


일단 새로운 언어, 새로운 Framework에 대해서 알게 되었으니 좀더 공부해서 완전한 나의 창으로 만들어야 겠다.

특히나  Type System, Actor Model, Monad 등 좀더 고급 기능에 대해서 좀더 파해치다보면 Scala전문가가 될 수 있지 않을까 싶다.

 


'개발자세상 > 자바세상' 카테고리의 다른 글

Chronos Notification issue  (0) 2018.06.09
POI로 Pivot테이블 만들기  (0) 2017.11.28
Mockup 테스트  (0) 2016.02.02
java.lang.OutOfMemoryError: unable to create new native thread  (0) 2015.08.15
Control character in XML  (0) 2014.05.28
Posted by headiron
,

Ladybug 율이...

Ikea에서...

율이가 이제는 자신의 어떤 모습이 예쁜 모습인지 아는것 같다. 시키지 않았는데 자연스럽게 예쁜 모습이 나온다.


올해도 어김없이 집 앞 목련 나무는 예쁘가 피었다.


우연히 알게된 필리 유일의 일본 가게 마이도... 가끔 일본 음식이 생각 나면 가곤 한다.

뭐... 뉴저지의 미쯔와 만큼은 아니지만 뭐.. 그래도 그럭저럭 일본음식을 즐길 수 있다.

아마 율이가 엄마 뱃속에 있었을 때 알았다면 더 좋았을 텐데..








올 봄에도 어김없이 가본 Longwood Garden. 올 봄 날씨가 좀 Crazy해서 인지 벗꽃 구경도 못하고.. -.-

그래도 예쁜 Tulip을 보면 늘 기분은 즐겁다.

예전에는 생각도 못했는데 이제는 마트에서 김밥 사서 즐기기도 한다는..


우리 율이에게 새로 생긴 도깨비 친구..

영미 누나 고마워요..

세계에서 제일 큰 크레용 에서



우연히 뉴저지 사는 지인 통해서 알게된 Creyola Experience.

우리 집에서 한시간 거리의 Easton이라는 곳에 있다.

한 번 가봐야지 하다가 비오는 날에 맞추어 가서 놀아 보았다.

율이보다는 한 두살 많은 아이들에게 좋은 곳일 듯 싶었는데 

율이는 재밌었는지 자주 가고싶다고 졸라대곤 한다.

조만간 비오는 주말에 한 번쯤 더 가볼 듯...


갈 수록 이뻐지고 있는 우리 율이

그래도 배고 푼건 못 챂는 듯..


세 살을 맞이 하여 이번에는 제대로 된 케잌으로 축하해 주었다.

촛불에 불을 붙이자 갑자기 율이가 울기 시작한다.

왜 그럴 까 생각해 보니 지난 겨울에 화재가 났던 아파트가 생각 나서 불이 무서웠나보다.

( 아파트 단지내의 다른 건물에서 불이 났었는데 .. 우리는 다음날에 서야 알게 되었다. 종종 아파트 산책하다 불에 탄 집을 보다 보니 불이 조금은 무서워 졌나보다. ) 



우리 율이는 생일 소원을 뭘 생각 했을까..


처음 먹어 본 케잌이 맛있었는지. 케잌이 있는 4일 동안 항상 우리에게 생일 파티하자고.. ( 케잌목자고) 졸라 대곤 헀다.

아직까지 사탕 같은 건 안주고 있는데.. 조금씩 먹게 되는 단 음식 까지 못 먹게 하기는 조금 힘 들다. 


세살 맞이 정기 검진...

그동안은 그냥 검진을 받았는데.. 이제는 일반 병원 처럼 환자 가운을 입혀준다. 

몸무게나 키도 어른 처럼 일반 체중계를 사용하고, 

그리고 이제는 1년 뒤 네살이 되면 오면 된단다. 다만 네살 때 오면 예방 주사 몇 개 맞을꺼라고..

그동안 한달 두달 세달 이렇게 조금씩 기간을 늘려가면서 체크업을 했었는데 아마도 3살 아기는 특별하게 조심해야 하는 부분들이 많지 않기 때문인 듯 하다. 다만 이제는 Social activity를 신경 써야 한다는 얘기를 하는데.. 마침 이날이 회사에 자녀들 대려오는 날이라 병원 검진 끝나고 회사로 gogo..


아직은 어리지만 다른 애기들 이랑 어울려서 잘 놀고.. 또 아빠 엄마랑은 먹어 보기 힘든 단 음식도 많이 먹어 보고..


마침 율이 세살 생일 다음주에 대사관 가야 할 일이 생겨서 식구들 모두 대리고 뉴욕으로 향했다.

나는 회사 가서 일하고 율이랑 엄마는 Central Park가서 시간을 보내고..


율이가 앵무새가 좋았는지.. 계속 Parrot보고 싶다고...

펭귄도 있었다는데.. 펭권 보는 것 보다는 수족관 주위 돌아 다니는 걸 더 좋아했다던가..

놀이터에서 다른 아이들과 놀고 있는 율이 

회사 동료가 나눠 준 인형 들고 좋아 하는 율이..

동료는 필리 오프스에 가져다 놓아 달라고 한거였는데.. 율이가 너무 좋아 해서 다시 가져가기 조금 힘들었다는 ..

뉴욕 대사관 민원실 옆에 있는 한국 문화관에서.. 생각해보니 나도 이런 것 앞에서는 사직 찍어 본적이 없는 것 같은데..


구글 컨퍼런스 갔다가 받았던 선글라스인데 결국 율이 장난감이 되어 버렸다.

너무 좋아 했는데.. 자주 쓰다가 눈 나빠질까바.. 나중에 조용히 치워버렸다..


필리 시청 옆 공원에 있는 분수 앞에서 한컷..


율이 세살 생일 전후로... 여러 일이 있었다.

뭐. 그 중에서 제일 기뻤던 건 병원에서 율이를 어른 처럼 대하기 시작했다는 것이다.

그리고 지난 삼년 동안 크게 아픈 기억없이 잘 자라 주어서 너무 기쁘고 감사했다.

미국에 오면서 제일 걱정 했던 것이 병원 이었고, 특히나 율이가 나을때 쯤 에는 집 사람이나 율이가 아프면 내가 잘 대처할 수 있을 까 걱정이 많았는데.. 그냥 나의 기후로 만들어 준 게 너무 고마웠다.

율아.. 지금까지 별 탈 없이 잘 자라줘서 고마워...

아빠 엄마가 아직 미숙하지만.. 우리 율이 사랑 하는 마음은 세상 어떤 것과도 비교할 수 없단다.


노스웨일즈 김씨 가문의 Claire 율은 오늘도 무럭 무럭 잘 자라고 있다.






'사는이야기 > Claire' 카테고리의 다른 글

가을과 겨울 사이...  (0) 2016.12.15
2016년 여름 ( 세번째 여름 )  (0) 2016.08.18
2년 겨울  (0) 2016.02.09
2살 그리고 몇 개월 즈음  (0) 2015.09.11
율이 2살 즈음..  (0) 2015.05.27
Posted by headiron
,

팀을 옮기면서 익히기 시작했던 Chronos. 핵심은 Mesos에서 실행되는 App에 불과하지만 분명 좋은 Tool인 것은 부인할 수 없다. 근데 문제는 Mesos, Chronos 모두 패키징을 제공하지 않아서 사용자가 스스로 BUILD해서 사용해야 한다는 점이다. 그런 부분이 좋은 BIZ Model이 되었는지 MESOSPHERE라는 회사에서 MESOS, CHRONOS를 묶어 PACKAGING을 제공하고 있다.

회사는 CENTOS6 이어서 그에 맞추어 RPM을 설치 했고, GOOGLING을 통해서 /sbin/start , /sbin/stop, /sbin/restart command로 각 Daemon을 start/stop할 수 있게 되었다.

근데 최근에 start option을 일부 수정할 이슈가 생겼는데, 어디를 수정해야 하는지 모르겠다는 점이다.

/sbin/start{stop,restart}를 체크해 보니 결국 /sbin/initctl의 link들이고 아래 article을 보니 /etc/init에 각 daemon 관련 config를 읽어 온다는 정보를 알게 되었다.

http://serverfault.com/questions/489525/linux-how-to-pass-parameters-to-service-foo-start-at-command-line

결국 CHRONOS 실행 Script를 찾았는데... 이 Script에 재밌는 부분이 보인다.

function load_options_and_log {

  set -x

  # Load Chronos options from Mesos and Chronos conf files that are present.

  # Launch main program with Syslog enabled.

  local cmd=( run_jar )

  if [[ -s /etc/mesos/zk ]]

  then

    cmd+=( --zk_hosts "$(cut -d / -f 3 /etc/mesos/zk)"

           --master "$(cat /etc/mesos/zk)" )

  fi

  if [[ -d $conf_dir ]]

  then

    while read -u 9 -r -d '' path

    do

      local name="${path#./}"

      if ! element_in "--${name#'?'}" "$@"

      then

        case "$name" in

          '?'*) cmd+=( "--${name#'?'}" ) ;;

          *)    cmd+=( "--$name" "$(< "$conf_dir/$name")" ) ;;

        esac

      fi

    done 9< <(cd "$conf_dir" && find . -type f -not -name '.*' -print0)

  fi

  logged chronos "${cmd[@]}" "$@"

}


/etc/mesos/zk파일을 읽어 와서 HOST설정하는 건 알고 있었는데, CONF_DIR에 파일들에 대해서 --<파일NAME>=<파일CONTENT>형태의 OPTION을 설정해 주는 부분이 정말 흥미로웠다.

일단 CONF_DIR에 내가 필요한 옵션 이름으로 파일을 만들어서 CHRONOS를 RESTART해 보니 과연 해당 파일 내용을 읽어와서 대몬을 START시켜준다.

항상 느끼는 거지만 SHELL을 잘 사용하면 사용할 수록 개발자들의 편의성이 없어 지는 듯 싶다.

Posted by headiron
,