BacGyber's Tricks

Network Monitoring on Windows

□ Tech (Software)


진행일자 : 2016-11-18 (금)

진행환경 : Windows7 local laptop에서 진행함 


Network Monitoring 배경

mybatis 연동하여 batch 처리하는 것을 network 으로 모니터링함.

* n건을 batch 처리시 

- update 쿼리의 경우 : 서버에 1회 요청 통신 <--- batch 처리가 잘됨

- selectOne 으로 sp 를 call 하는 경우 : 서버에 n회 요청 통신


Linux 에서는 이용한적이 있음.

Tcpdump, wireshark  같은거로 했었던거 같고...

목적은 내쪽 Ap의 문제가 아니라는 걸 증명하기 위함 ( 바보같은 넘들이 Interface client 에서 다른 서버 콜했다, 내 서버 콜했다 하면서 다른 서버 콜한 요청에 대해 connection timeout 났다고 서버쪽 문제라고 주장 등 )


Windows 에선 이번에 처음해보는듯


Tool


Microsoft Network Monitor 3.4  ◀ 이걸 추천, 더 쉽다.


* download : https://www.microsoft.com/en-us/download/details.aspx?id=4865

* install 필요

* 실행시에 run as administrator 로 실행하기

* 화면 캡쳐

  


- New Capute > Start 버튼을 통해 Capture 시작이 가능

- 좌측에 통신한 프로그램을 선택할수 있음. 

로컬 브라우저를 통해 로컬의 Tomcat Webap 를 테스트하는 것을 모니터링 하는 상황이므로 좌측에서 javaw 를 선택함.

- 우측 하단에서 해당 내용 확인이 가능

- 내용 저장도 가능


Wireshark

이게 windows 용도 있구나. 

* download : https://www.wireshark.org/download.html

* install 필요

* 실행시에 run as administrator 로 실행하기




3way merge tool 조사

□ Tech (Software)

KDiff3, P4Merge 등 여러 툴이 있는데

지금 당장 직접 검토해볼 여력은 없고...


대략 느낌은...


무료로 한정 지어볼때


P4Merge 가 제일 좋을거 같고

KDiff3 도 괜찮을거 같다.


KDiff3 는 완전 무료 느낌이라... 

담에 시간되면 KDiff3 부터 시도를 해보는것도 괜찮을거 같다.

( 한글이 깔끔하게 지원이 안되는 문제가 있었던거 같은데... 최종 버젼에서 보완이 되었는지는 의문... )


P4Merge 도 무료로 쓸 수 있는거 같긴 한데... 확실히는 모르겠다...




How to disconnect from SVN on TrotoiseSvn

□ Tech (Software)

Let's say

folder A is a SVN Connected folder.


0. Create B Folder

1. Export A to B

2. Delete A

3. Use B ( Rename it if you want )


Done :)

현시점에서 IE11에서 스크립트로 Print를 정확히 구현하는건 포기

□ Tech (Software)

현재로서 최선의 방법은 

아래와 같은 구현인데...


아래 방식에는 한계가 있습니다. 스타일이 적용되지 않는다는것...


스타일까지 적용이 필요없다면 아래 코드로 하면 가능합니다.


아래처럼 안하고 바로 프린트창 그대로 오픈하는 것은... 나름 구글링을 꽤 해본 결과... 현재로선 방법을 못찾겠네요.



function printWin()

{

var divToPrint = document.getElementById('printArea');

    var myWindow=window.open('','','width=300,height=200');

    myWindow.document.write(divToPrint.innerHTML);

 

    myWindow.document.close();

myWindow.focus();

myWindow.print();

myWindow.close();

}


딱 0.5초~ 아래 공감버튼 누르는데 사용해주시면

제 기분은 5배 Up 이 될거 같아요 :)


[Spring] @Autowired 참조 대상이 null 인 경우 & depends-on Multiple 설정방법

□ Tech (Software)

@Autowired 를 이용해 참조하는 대상이 null 인 경우


class A와 B가 

Spring Context Xml 상에서 

Scan 대상으로 되어 있거나

bean 선언이 되어 있는 상황에서도


A에서 

@Autowired B b; 와 같이 사용할때

b가 null 이어서 참조할수 없는 trouble 상황을 만나기도 한다.


이럴때는 체크하는 방법이 좀 있겠으나

빨리 해결하는 방법은

Spring Context Xml 상에서

1) bean 선언 순서를... A 먼저 하고 B 를 하도록 하던가

2) 아님 아예 깔끔하게 depends-on 을 사용해서 하도록 한다.


* 순서만 잡아놓아도 보통은 잘되지만 그렇지 않은 경우도 있다


그런데... 이러한 상황은 하나의 Class에서 여러개의 bean 을 참조하는 나름 좀 복잡한 상황일 수 있으므로


여러개의 bean 을 @Autowired 를 통해 참조해야 하는 개연성이 좀 있다.


즉.. 예를 들어 A에서 B뿐만 아니라 C도 @Autowired로 사용해야 할때는

B와 C를 depends-on 으로 잡아야 할 것이다.


그렇다면?

bean 선언시 depends-on 에 여러개 bean 설정 방법

<bean id="sexyRestClient" 

class="com.sexy.framework.rest.client.SexyRestClient" 

depends-on="restTemplate,sexyLogToDBServiceImpl" />


멀티 구분자는 위와 같이 comma 또는 whitespace (공백), semi-colon 등으로 하면 된다.  depends-on 에 하나씩만 걸어 써봤는데 여러개 걸어보는건 이번에 첨 해봄.


  시원하게 공감버튼 빡!! ( 0.5초 걸려요 ) ^>^